我想在一个单独的文件中创建一个全局mixin。我在网上看到的所有教程总是将mixin放在同一个文件中,或者没有解释如何导入另一个文件。
如果它们都在同一个文件中,那么mixin就没有意义了,所以必须有某种方法从不同的文件加载它们,对吧?
这是我的测试混音_test.js:
export default mixin_test = {
methods: {
test: function( msg )
{
console.log( msg );
}
}
}
在app.js中,我有以下内容:
...
import mixin_test from "./mixin_test.js";
...
在我的组件中:
export default {
name:"something",
mixins: [mixin_test],
mounted(){
this.test( "hello world" );
}
}
如果我在网络浏览器中打开页面,我会收到错误消息:
Uncaught ReferenceError: assignment to undeclared variable mixin_test
有人知道问题出在哪里吗?
default
导出与命名导出不同,不需要指定名称。default
导出是一个表达式。export default mixin_test = ...
与console.log(mixin_test = ...)
相同,这导致分配给不存在的mixin_test
变量。
它应该是:
export default {...}
或者:
const mixin_test = {...}
export default mixin_test;