首页 > 解决方案 > 在 vue 中具有访问功能的 Mixin

问题描述

我有一个正在运行的 VueJs 应用程序,当用户登录时,他会从服务器获得一些权限,例如管理员、只读用户、工作人员等。基于这些权限,应用程序中的某些组件/功能应该或不应该提供给用户。例如,我想在我的不同组件/div 上引用访问权限方法:

<MyComponent v-if="hasRights()"></MyComponent>

或者只是从脚本部分访问此方法。我正在考虑使用 mixin,这似乎适合我的需要,但是 mixin 是解决这个问题的正确方法吗?还有另一种更像模式的正确方法吗?

标签: vue.js

解决方案


我对架构的建议:
按权限创建文件:

  • 管理员.js
  • User1.js
  • User2.js

现在您可以创建一个函数(无论从您的服务器接收用户,然后将您引用到正确的文件。通过这样做,您可以调用。您的组件:this.$config.get().displaySomethingget()知道要转到哪个文件的地方。制作您的配置在引导程序上可用。
我不推荐 vuex 的原因是因为听起来你的配置是静态的,可以硬编码到文件中。


推荐阅读