<ul class="pagination">
	<!-- 이전 -->
	<li class="paginate_button previous" :class="isFirstOrLast(results.first)" id="noticeList_previous">
		<a href="javascript:;">Previous</a>
	</li>
	<!-- 첫 페이지 -->
	<li class="paginate_button" :class="(1 == (results.number+1))? 'active' : ''">
		<a href="javascript:;" @click="movePage(1)">1</a>
	<!-- ... -->
	<li class="paginate_button disabled" v-if="results.number > 3">
		<a href="javascript:;">...</a>
	</li>
	</li>
	<!-- 반복되는 페이지 -->
	<li class="paginate_button" :class="(n == (results.number+1))? 'active' : ''" v-for="n in (results.totalPages-1)" v-if="showPagingButton(n)">
		<a href="javascript:;" @click="movePage(n)">{{ n }}</a>
	</li>
	<!-- ... -->
	<li class="paginate_button disabled" v-if="results.number < results.totalPages - 4">
		<a href="javascript:;">...</a>
	</li>
	<!-- 마지막 페이지 -->
	<li class="paginate_button" :class="(results.totalPages == (results.number+1))? 'active' : ''">
		<a href="javascript:;" @click="movePage(results.totalPages)">{{ results.totalPages }}</a>
	</li>
	<!-- 다음 -->
	<li class="paginate_button next" :class="isFirstOrLast(results.last)" id="noticeList_next">
		<a href="javascript:;">Next</a>
	</li>
</ul>

showPagingButton: function(n) { const vm = this var thisPage = vm.results.number + 1 var totalPage = vm.results.totalPages + 1 //[조건] 5페이지가 넘어가면 //[결과] 1 ~ 4페이지 숨겨주기 var cond1 = (thisPage < 5) && (n > 5) //[조건] 마지막페이지 ~ 마지막페이지-4 까지이면 //[결과] 마지막페이지-4를 제외한 나머지 페이지들 숨겨주기 var cond2 = (thisPage > (totalPage - 5)) && (n < (totalPage - 5)) //[조건] 첫페이지, 끝페이지 //[결과] 숨겨주기 var cond3 = (n == 1) || (n == totalPage) //[조건] thisPage > 4 이면 //[결과] 현재 페이지의 바로 앞 페이지를 제외한 앞에 애들 숨겨주기 var cond4 = (thisPage > 4) && (n < (thisPage - 1)) && (n < (totalPage - 5)) //[조건] thisPage < 마지막페이지-4 이면 //[결과] 현재 페이지의 바로 뒷 페이지를 제외한 뒤에 애들 숨겨주기 var cond5 = (thisPage < (totalPage - 4)) && (n > (thisPage + 1)) && (n > 5) if(cond1 || cond2 || cond3 || cond4 || cond5) return false return true }, isFirstOrLast: function(boolean) { return boolean? "disabled" : "" }, movePage: function(page) { this.formData.page = page-1 this.getLog(this.id) }

위와같이 하긴 했는데;

좀더 고민이 필요할듯.

+ Recent posts