1
LeungJZ 2018-04-16 16:47:16 +08:00
我的做法是:
将 const STATES = { success:‘已成功’, pending: '发送中', fail: '失败' } 放到 mixins 下面, export const getState = state => STATES[state] 引入: import {getState} from 'xxx' getState(YourStateFromRemote) |
2
crushJs OP @LeungJZ 我就是想知道,为啥要在 root 层多写一层字段映射呢? state 不应该是纯净的数据流吗?数据处理怎么放到 root 层了?
|
3
LeungJZ 2018-04-16 17:03:09 +08:00
可以在 store 中分一个模块出来,专门管理这些静态资源,放不放 root 看个人习惯,反正一般都是通过 store.getters.xxx 去取的。
|
4
safaring 2018-04-16 17:09:48 +08:00
赞同你的想法
|
6
goreliu 2018-04-16 17:29:21 +08:00
如果你不清楚自己的方法好在哪里,为什么要说服对方使用自己的方法呢?你可以换位思考一下。
|
8
goreliu 2018-04-16 17:32:16 +08:00 1
@crushJs 规范就是没有异议优先采用的,如果你认为规范不合理,那你需要指出为什么不合理,然后怎样才合理,来说服规范的制定者或者采用者。可以设想一下你是规范的制定者,然后重新想一下这个问题。
|
9
h1367500190 2018-04-16 17:38:07 +08:00
如果只是实现类似于 i18n,或者只是普通的键值对,没必要放到 store 里吧,为什么不静态化呢?非要这样做的话,我觉得还不如做成插件以添加全局属性的方式实现
|
10
tao1991123 2018-04-16 17:43:29 +08:00
现在只有一种语言: 中文
```javascript mapToStatus = { success:‘已成功’, pending: '发送中', fail: '失败' } ``` 如果有其他语言 那就是 ```javascript mapToStatus = { en: { success:‘ success ’, pending: 'pending', fail: 'fail' }, cn: { success:‘已成功’, pending: '发送中', fail: '失败' } , } ``` 简而言之你这就是一个简化版的 i18n 的需求,建议参考 https://github.com/kazupon/vue-i18n 的做法 |
11
crushJs OP @h1367500190 你是说加一个 i18n 的插件是吗?
|
12
airyland 2018-04-16 19:41:06 +08:00 via iPhone
全局 filter
|