Vue.js 在vue js组件中导入和使用本地javascript文件的有效方法是什么?
我在Vue.js组件的脚本标签中编写了如下内容:Vue.js 在vue js组件中导入和使用本地javascript文件的有效方法是什么?,vue.js,vuejs2,vue-router,Vue.js,Vuejs2,Vue Router,我在Vue.js组件的脚本标签中编写了如下内容: require(“./js/swiper.min.js”); 要求(“./js/wow.min.js”); 导出默认值{ 安装的(){ var swiper=new swiper('.swiper container',{分页:'.swiper- pagination',paginationClickable:true,}); 新的WOW().init(); } } 这会导致以下错误 [Vue warn]: Error in mounted
require(“./js/swiper.min.js”);
要求(“./js/wow.min.js”);
导出默认值{
安装的(){
var swiper=new swiper('.swiper container',{分页:'.swiper-
pagination',paginationClickable:true,});
新的WOW().init();
}
}
这会导致以下错误
[Vue warn]: Error in mounted hook: "TypeError: Cannot assign to read only
property 'exports' of object '#<Object>'"
[Vue warn]:挂载挂钩中的错误:“TypeError:无法分配给只读
对象“#”的属性“导出”
它在index.html
(一个简单的html文件)中正常工作,但在Vue.js组件中它给出了错误
在Vue.js中使用本地javascript文件是否正确?这看起来像是导出与
require
vsimport
您可以将require
与模块一起使用。导出和导入与导出默认值一起使用。现在你正在混合它们,这可能会导致一个问题
这在这里得到了很好的解释:
你不应该做这样的事情:
相反:
common.js方式
或
ES6路
在您的情况下,它有权包含在index.html中。但是,如果您想包含本地模块或任何js模块(不是库),您可以参考您的回答是正确的。但是,真正的问题在于.Vue,您无法将模块导入到Vue组件中。您必须安装到Vue原型中才能使用它。
// myModule.js
import x from 'module-x'
...
module.exports = something
// myModule.js
const x = require('module-x')
// Here there is a trick, if module-x is exported as ES6 with a default export it would be
const x = require('module-x').default
...
module.exports = something
// myModule.js
import x from 'module-x'
...
export default something