Javascript Vue.JS导入自定义模块
我创建了一个模块greatings.js,如下所示:Javascript Vue.JS导入自定义模块,javascript,vue.js,module,vue-component,Javascript,Vue.js,Module,Vue Component,我创建了一个模块greatings.js,如下所示: function greatings() { this.hello = function() { return 'hello!'; } this.goodbye = function() { return 'goodbye!'; } } module.exports = greatings; 然后我将其导入VUE.js中的main.js,如下所示: import greatings from './ass
function greatings() {
this.hello = function() {
return 'hello!';
}
this.goodbye = function() {
return 'goodbye!';
}
}
module.exports = greatings;
然后我将其导入VUE.js中的main.js,如下所示:
import greatings from './assets/js/greatings';
Vue.use(greatings);
现在我想在我的组件中使用它,但如果我这样做,我会得到一个错误:
mounted() {
this.greatings.hello();
}
错误:挂载钩子中的错误:“TypeError:无法读取未定义的属性“hello”
如何修复它并能够使用我的greatings?
谢谢你的帮助 使用Vue.use()注册自定义插件时,它必须定义一个install()函数,该函数由Vue调用。从文档:
Vue.js插件应公开安装方法。将使用Vue构造函数作为第一个参数以及可能的选项调用该方法
请参阅提供的示例,了解创建自定义插件时的所有选项:greatings.js文件应如下所示
export default {
hello() {
return "hello";
},
goodbye() {
return "goodbye!";
}
};
然后像这样导入任何要使用的文件
export default {
hello() {
return "hello";
},
goodbye() {
return "goodbye!";
}
};
从“/assets/js/greatings”导入greatings
并调用您想要的任何函数。删除此函数
Vue.use(greatings)代码>谢谢。如何从mounted(){}调用hello函数?greatings.hello()?我出错了…你可以这样叫你好greatings.hello();mounted(){greatings.hello()}u assets_js_greatings_网页包_IMPORTED_MODULE_10______default.a.hello不是一个函数“你能帮我编写代码吗?谢谢Igor,这非常有用,但我正在尝试重用我的旧脚本;插件需要太多的更改。我会评估是否真的需要插件。谢谢你的建议。”