12345678910111213141516171819202122232425262728293031 |
- import { useDialog } from 'naive-ui';
- import { defineComponent } from 'vue';
- import { useRouter } from 'vue-router';
- export default defineComponent({
- name: 'router-error',
- setup() {
- const router = useRouter();
- const dialog = useDialog();
- let isOpen = false;
- router.onError(error => {
- const str = error.message + '';
- const isChunkLoadFailed = str.indexOf('imported');
- // const targetPath = router.history.pending.fullPath
- if (isChunkLoadFailed != -1 && !isOpen) {
- isOpen = true;
- dialog.warning({
- title: '更新提示',
- content: '网站有更新请点击确定刷新页面?',
- positiveText: '确定',
- negativeText: '取消',
- onPositiveClick: () => {
- window.location.reload();
- }
- });
- }
- });
- return () => <div></div>;
- }
- });
|