Browse Source

nprogress 问题修复

冯诚 3 years ago
parent
commit
ded12b971b
4 changed files with 13 additions and 6 deletions
  1. 6 2
      src/pages/account/index.vue
  2. 2 2
      src/pages/register/index.vue
  3. 4 1
      src/router.ts
  4. 1 1
      src/service/request.ts

+ 6 - 2
src/pages/account/index.vue

@@ -143,8 +143,12 @@ import { getUserInfo } from '@/service/user'
 export default defineComponent({
   name: 'Account',
   async beforeRouteEnter(to, from, next) {
-    const { results } = await getUserInfo()
-    next(vm => (vm.info = results))
+    try {
+      const { results } = await getUserInfo()
+      next(vm => (vm.info = results))
+    } catch (err) {
+      next(new Error(err.message))
+    }
   },
   data() {
     return {

+ 2 - 2
src/pages/register/index.vue

@@ -62,8 +62,8 @@ const { values, handleSubmit, reset } = useForm<ApiUser.Register.Request>({
 async function onSubmit() {
   values.name = values.email
   values.password_confirmation = values.password
-  await register(values as any)
-  Toast('register success')
+  const { message } = await register(values as any)
+  Toast(message)
   setTimeout(() => router.push('/login'), 500)
 }
 </script>

+ 4 - 1
src/router.ts

@@ -82,6 +82,9 @@ router.beforeEach(() => {
   NProgress.start()
 })
 router.afterEach(() => NProgress.done())
-router.onError(() => NProgress.remove())
+router.onError(() => {
+  NProgress.status = null
+  NProgress.remove()
+})
 
 export default router

+ 1 - 1
src/service/request.ts

@@ -49,7 +49,7 @@ _axios.interceptors.response.use(
     config.showLoading && Toast.hide()
     const data = response.data as ResponseData | Blob | undefined
     if (!data || data instanceof Blob || data.success) return data
-    config.reportError && Toast(data.message || netErrMsg)
+    config.reportError !== false && Toast(data.message || netErrMsg)
     return Promise.reject(data)
   },
   error => {