61 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Vue
		
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Vue
		
	
	
| <!-- 错误界面 -->
 | |
| <template>
 | |
|   <view class="error-page">
 | |
|     <s-empty
 | |
|       v-if="errCode === 'NetworkError'"
 | |
|       icon="/static/internet-empty.png"
 | |
|       text="网络连接失败"
 | |
|       showAction
 | |
|       actionText="重新连接"
 | |
|       @clickAction="onReconnect"
 | |
|       buttonColor="#ff3000"
 | |
|     />
 | |
|     <s-empty
 | |
|       v-else-if="errCode === 'TemplateError'"
 | |
|       icon="/static/internet-empty.png"
 | |
|       text="未找到模板"
 | |
|       showAction
 | |
|       actionText="重新加载"
 | |
|       @clickAction="onReconnect"
 | |
|       buttonColor="#ff3000"
 | |
|     />
 | |
|     <s-empty
 | |
|       v-else-if="errCode !== ''"
 | |
|       icon="/static/internet-empty.png"
 | |
|       :text="errMsg"
 | |
|       showAction
 | |
|       actionText="重新加载"
 | |
|       @clickAction="onReconnect"
 | |
|       buttonColor="#ff3000"
 | |
|     />
 | |
|   </view>
 | |
| </template>
 | |
| 
 | |
| <script setup>
 | |
|   import { onLoad } from '@dcloudio/uni-app';
 | |
|   import { ref } from 'vue';
 | |
|   import { ShoproInit } from '@/sheep';
 | |
| 
 | |
|   const errCode = ref('');
 | |
|   const errMsg = ref('');
 | |
| 
 | |
|   onLoad((options) => {
 | |
|     errCode.value = options.errCode;
 | |
|     errMsg.value = options.errMsg;
 | |
|   });
 | |
| 
 | |
|   // 重新连接
 | |
|   async function onReconnect() {
 | |
|     uni.reLaunch({
 | |
|       url: '/pages/index/index',
 | |
|     });
 | |
|     await ShoproInit();
 | |
|   }
 | |
| </script>
 | |
| 
 | |
| <style lang="scss" scoped>
 | |
|   .error-page {
 | |
|     width: 100%;
 | |
|   }
 | |
| </style>
 |