| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154 | 
							- (function() {
 
- 	Vue.component('yujing-list', {
 
- 		template: '<div style="position:relative;height:100%;">\
 
- 						<div class="sk-spinner sk-spinner-chasing-dots" v-show="!isRequestEnd" style="top: 50%;left:50%;margin-left:-0.1rem;margin-top: -0.1rem;position:absolute;">\
 
- 				            <div class="sk-dot1"></div>\
 
- 				            <div class="sk-dot2"></div>\
 
- 				       </div>\
 
- 						<div id="wrapper"  style="overflow: hidden;" v-show="isRequestEnd">\
 
-     						<div id="scroller">\
 
-     						 	<div id="pullDown" style="display:none;">\
 
-     						 		<div class="pullDownLabel"></div>\
 
-     						 	</div>\
 
-         						<div class="pulldown-tips">下拉刷新</div>\
 
- 								<div class="div-yujing-content">\
 
- 									<div class="mt32" v-for="(yujing,index) in yujingData">\
 
- 										<div class="c-f20 c-B5E1FC">{{yujing.create_time}}</div>\
 
- 										<div class="c-f20 c-B5E1FC mt8" v-if="yujing.address == null">地址暂无 {{yujing.sender_name}} {{yujing.value2Name}}\
 
- 											<span class="c-E9350B ml20 c-f20">异常</span>\
 
- 										</div>\
 
- 										<div class="c-f20 c-B5E1FC mt8" v-else>{{yujing.address}} {{yujing.sender_name}} {{yujing.value2Name}}\
 
- 											<span class="c-E9350B ml20 c-f20">异常</span>\
 
- 										</div>\
 
- 									</div>\
 
- 								</div>\
 
- 								<div id="pullUp">\
 
-         							<div class="pullUpLabel">加载更多</div>\
 
-        							</div>\
 
- 						    </div>\
 
- 						 </div>\
 
- 					</div>',
 
- 		props: [],
 
- 		data: function() {
 
- 			return {
 
- 				yujingData: [],
 
- 				page: 1,
 
- 				pageSize: 50,
 
- 				myScroll: null,
 
- 				isEnd: false,
 
- 				loadingStep: 0,
 
- 				isRequestEnd:false
 
- 			}
 
- 		},
 
- 		mounted: function() {
 
- 			var _self = this;
 
- 			var pullDown = $("#pullDown"),
 
- 				pullUp = $("#pullUp"),
 
- 				pullDownLabel = $("#pullDown .pullDownLabel"),
 
- 				pullUpLabel = $("#pullUp .pullUpLabel");
 
- 			
 
- 			//初始化请求数据
 
- 			getRequestData();
 
- 			_self.myScroll = new IScroll("#wrapper", {
 
- 				scrollbars: "custom",
 
- 				mouseWheel: true,
 
- 				interactiveScrollbars: true,
 
- 				shrinkScrollbars: false,
 
- 				fadeScrollbars: false,
 
- 				scrollY: true,
 
- 				probeType: 2,
 
- 				resizeScrollbars: false
 
- 				//				        bindToWrapper:true
 
- 			});
 
- 			_self.myScroll.on("scroll", function() {
 
- 				if(this.y > 40) { //下拉刷新操作  
 
- 					$(".pulldown-tips").hide();
 
- 					pullDown.addClass("refresh").show();
 
- 					pullDownLabel.text("松手刷新数据");
 
- 					_self.loadingStep = 1;
 
- 					pullDownAction(_self);
 
- 				} else if(this.y <= this.maxScrollY &&!_self.isEnd) { //上拉加载更多  
 
- 					pullUp.addClass("refresh").show();
 
- 					pullUpLabel.text("正在载入");
 
- 					_self.loadingStep = 1;
 
- 					pullUpAction(_self);
 
- 				}
 
- 			});
 
- 			_self.myScroll.on("scrollEnd", function() {
 
- 				if(_self.loadingStep == 1) {
 
- 					if(pullDown.hasClass("refresh")) { //下拉刷新操作  
 
- 						pullDown.removeClass("refresh").addClass("loading");
 
- 						pullDownLabel.text("正在刷新");
 
- 						_self.loadingStep = 2;
 
- 						pullDownAction(_self);
 
- 					}
 
- 				}
 
- 			});
 
- 			document.addEventListener('touchmove', function(e) {
 
- 				e.preventDefault();
 
- 			}, false);
 
- 			//下拉刷新
 
- 			function pullDownAction() {
 
- 				setTimeout(function() {
 
- 					_self.page = 1;
 
- 					 pullDown.hide();
 
- 					getRequestData();
 
- 					loadingStep = 0;
 
- 					$(".pulldown-tips").show();
 
- 					_self.myScroll.refresh();
 
- 				}, 400);
 
- 			}
 
- 			//上拉加载
 
- 			function pullUpAction() {
 
- 				if(!_self.isEnd) {
 
- 					setTimeout(function() {
 
- 						pullUp.hide();
 
- 						_self.page++;
 
- 						getRequestData();
 
- 						_self.myScroll.refresh();
 
- 						loadingStep = 0;
 
- 					}, 400);
 
- 				}
 
- 			}
 
- 			function getRequestData() {
 
- 				//警报信息
 
- 				intelligentAPI.warningInformationAlarm({
 
- 					page: _self.page,
 
- 					pageSize: _self.pageSize
 
- 				}).then(function(res) {
 
- 					if(res.status == 200) {
 
- 						var reqData = res.data;
 
- 						if(_self.page == 1) {
 
- 							_self.yujingData = reqData;
 
- 						} else {
 
- 							var dataArr = _.map(reqData, function(data) {
 
- 								_self.yujingData.push(data);
 
- 								return data;
 
- 							})
 
- 						}
 
- 						if(reqData.length < _self.pageSize) {
 
- 							_self.isEnd = true;
 
- 							pullUpLabel.text("没有更多数据了...");
 
- 						}else{
 
- 							pullUpLabel.text("加载更多");
 
- 						}
 
- 						setTimeout(function() {
 
- 							_self.myScroll.refresh();
 
- 						}, 500)
 
- 						_self.isRequestEnd = true;
 
- 					} else {
 
- 						toastr.error(res.msg)
 
- 					}
 
- 				})
 
- 			}
 
- 		}
 
- 	});
 
- })()
 
 
  |