Umi: 在Mac OS端使用useModel存在一些问题.

Created on 10 Aug 2020  ·  1Comment  ·  Source: umijs/umi

What happens?

在Mac OS中使用useModel会出现需要将名称写两次的情况,在Windows中写法也不一样.如下图所示:
image

  const { refresh } = useModel('@@initialState');
  // Todo Mac OS下要写login.login ?
  const { loading, signIn } = useModel('login.login');
  // Todo Windows下要写login
  const { loading, signIn } = useModel('login');

希望官方能修复一下这个问题,各个平台代码不一样不太好.

Mini Showcase Repository(REQUIRED)

Provide a mini GitHub repository which can reproduce the issue. Use yarn create @umijs/umi-app then upload to your GitHub

How To Reproduce

Steps to reproduce the behavior: 1. 2.

Expected behavior 1. 2.

Context

  • Umi Version:
  • Node Version:
  • Platform:

Most helpful comment

之前在 windows 环境下是有问题的,在 POSIX 下是预期行为。目前 windows 下的行为在 [email protected] 已经修正。
只有全局的 model 是没有前缀的,为了避免重名,建在页面里的 models 都是有前缀的,举几个例子

| path | namespace |
|-|-|
| src/models/global.ts | global |
| src/pages/models/user.js | user |
| src/pages/DashBoard/models/drawer.ts | DashBoard.drawer |
| src/pages/DashBoard/stat.model.ts | DashBoard.stat |
| src/pages/DashBoard/Chart/models/data.ts | DashBoard.Chart.data |

>All comments

之前在 windows 环境下是有问题的,在 POSIX 下是预期行为。目前 windows 下的行为在 [email protected] 已经修正。
只有全局的 model 是没有前缀的,为了避免重名,建在页面里的 models 都是有前缀的,举几个例子

| path | namespace |
|-|-|
| src/models/global.ts | global |
| src/pages/models/user.js | user |
| src/pages/DashBoard/models/drawer.ts | DashBoard.drawer |
| src/pages/DashBoard/stat.model.ts | DashBoard.stat |
| src/pages/DashBoard/Chart/models/data.ts | DashBoard.Chart.data |

Was this page helpful?
0 / 5 - 0 ratings

Related issues

miaojinxing picture miaojinxing  ·  3Comments

zhanchengkun picture zhanchengkun  ·  3Comments

y2891663091 picture y2891663091  ·  4Comments

stoneWeb picture stoneWeb  ·  3Comments

six-666 picture six-666  ·  3Comments