首页 > 解决方案 > 使用 .default 进行组件注册不起作用

问题描述

我有 2 个项目(A 和 B)和一些应该在两个项目中使用的包。在 A 中,组件注册与 .default 一起使用,而在另一个中则不行。我究竟需要更新什么才能使其在 B 中工作?

包括这样的Vue组件: Vue.component('trm-vuetify-drawer', require('./components/DrawerApp.vue').default);

在 Project BI 中,必须删除 .default 才能正确使用它。但我想使用 .default 因为组件来自一个包。

没有更多的代码。它的注册不起作用。

版本:Vue:2.6.9 Vue-Template-Compiler:2.6.9

我收到以下错误:

[Vue 警告]:未知的自定义元素:- 您是否正确注册了组件?对于递归组件,请确保提供“名称”选项。

标签: laravelvuejs2vue-componentvuetify.jslaravel-mix

解决方案


在 Laravel Mix 2.0 中你不应该使用.default。这仅在 Laravel Mix 4.0 及更高版本中是必需的。

只需将您的代码更改为:

Vue.component('trm-vuetify-drawer', require('./components/DrawerApp.vue'))

或者,如果你想在任何地方使用,你可以更新到 Laravel Mix 4.0+ .default


推荐阅读