node.js - 使用 casl & vue 时的警告和错误
问题描述
我正在尝试在我的 vueJS 应用程序中安装 @casl/ability 和 @casl/vue,但似乎无法使其工作。我不知道我是否做错了什么,或者与 Quasar Framework 的集成是否会破坏某些东西。
casl.js(在 quasarconf 中调用)
import Vue from 'vue';
import { abilitiesPlugin } from '@casl/vue';
import ability from '../services/ability';
Vue.use(abilitiesPlugin, ability)
./服务/能力
import { AbilityBuilder, Ability } from '@casl/ability'
export default function defineAbilityFor(user) {
const { can, cannot, build } = new AbilityBuilder(Ability);
can('readOwnData', 'all')
can('readManagerData', 'all')
can('readSquadData', 'all')
return build();
}
我收到了这些警告
WARNING Compiled with 4 warnings 10:50:50 AM
warning in ../node_modules/@casl/vue/dist/es5m/index.js
"export 'defineComponent' (imported as 't') was not found in 'vue'
warning in ../node_modules/@casl/vue/dist/es5m/index.js
"export 'inject' (imported as 'n') was not found in 'vue'
warning in ../node_modules/@casl/vue/dist/es5m/index.js
"export 'provide' (imported as 'r') was not found in 'vue'
warning in ../node_modules/@casl/vue/dist/es5m/index.js
"export 'ref' (imported as 'i') was not found in 'vue'
而控制台中的这个错误
index.js?0c5a:1 Uncaught TypeError: Object(...) is not a function
at eval (index.js?0c5a:1)
at Module.../node_modules/@casl/vue/dist/es5m/index.js (vendor.js:23)
at __webpack_require__ (app.js:854)
at fn (app.js:151)
at eval (casl.js?8d6e:1)
at Module../src/boot/casl.js (app.js:1137)
at __webpack_require__ (app.js:854)
at fn (app.js:151)
at eval (client-entry.js:24)
at Module../.quasar/client-entry.js (app.js:1019)
解决方案
推荐阅读
- php - wpdb prepare 被错误调用,它必须有一个占位符
- c++ - 扩展基类并使用特性而不改变派生类
- html - 如何从页面加载的下拉列表中获取选定的值和文本,然后单击角度为 8 的反应形式的按钮
- libharu - libharu-RELEASE_2_3_0 是否支持俄语文本显示?
- python - Mode() 函数错误的 Traceback 显示使用 Python3.7 时统计模块正在调用 `xrange()`
- node.js - 屏幕上的 ImageSearch 并在 NodeJS 上获取位置
- github - 如何保留最新代码的副本并使用 github 和 bitbucket 发布?
- angular - 如何在角度页面组件中重定向到 div 的特定部分
- webdriver-io - 如何跨 webdriverio 规范共享/保留数据/状态?
- ios - NSManagedObjectContext 不会在不同于 UIViewController 的自定义类中保存或获取