| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 | 
							- <template>
 
- 	<view class="grace-full-loading" v-if="graceFullLoading" :style="{backgroundColor:background}" @tap.stop="" @touchmove.stop="">
 
- 		<image class="grace-full-loading-image" ref="loadingLogos" :src="logoUrl" mode="widthFix" :style="{width:size, height:size}"></image>
 
- 		<text class="grace-full-loading-text" :style="{color:textColor, fontSize:fontSize}">{{text}}</text>
 
- 	</view>
 
- </template>
 
- <script>
 
- var animation = weex.requireModule('animation');
 
- export default {
 
- 	name: "graceFullLoading",
 
- 	props: {
 
- 		graceFullLoading: {
 
- 			type    : Boolean,
 
- 			default : false
 
- 		},
 
- 		logoUrl : {
 
- 			type    : String,
 
- 			default : ""
 
- 		},
 
- 		text : {
 
- 			type    : String,
 
- 			default : "Loading ..."
 
- 		},
 
- 		fontSize : {
 
- 			type    : String,
 
- 			default : "22rpx"
 
- 		},
 
- 		textColor : {
 
- 			type    : String,
 
- 			default : "#999999"
 
- 		},
 
- 		size : {
 
- 			type    : String,
 
- 			default : "138rpx"
 
- 		},
 
- 		background : {
 
- 			type    : String,
 
- 			default : 'rgba(255,255,255,1)'
 
- 		}
 
- 	},
 
- 	updated : function(){
 
- 		setTimeout(()=>{
 
- 			var loadingLogos = this.$refs.loadingLogos;
 
- 			this.animation1(loadingLogos);
 
- 		}, 200);
 
- 	},
 
- 	methods: {
 
- 		animation1 : function(loadingLogos){
 
- 			var _self = this;
 
- 			animation.transition(loadingLogos, {
 
- 				styles: { opacity:0.3},
 
- 				duration: 1000, 
 
- 				timingFunction: 'linear',
 
- 				needLayout:false,
 
- 				delay: 0 
 
- 			}, function (){_self.animation2(loadingLogos);});
 
- 		},
 
- 		animation2 : function(loadingLogos){
 
- 			var _self = this;
 
- 			animation.transition(loadingLogos, {
 
- 				styles: { opacity: 1},
 
- 				duration: 1000, 
 
- 				timingFunction: 'linear',
 
- 				needLayout:false,
 
- 				delay: 0 
 
- 				}, function (){_self.animation1(loadingLogos);}
 
- 			);
 
- 		}
 
- 	}
 
- }
 
- </script>
 
- <style scoped>
 
- .grace-full-loading{width:750rpx; justify-content:center; align-items:center; background-color:rgba(255,255,255,0.9); position:fixed; left:0; top:0; bottom:0;}
 
- .grace-full-loading-image{width:150rpx; height:150rpx; border-radius:150rpx;}
 
- .grace-full-loading-text{line-height:50rpx; font-size:22rpx; margin-top:10rpx; text-align:center;}
 
- </style>
 
 
  |