Javascript 名称空间混合Vuejs
我希望能够创建一个名称空间的mixin 让我们以此通知mixin为例:Javascript 名称空间混合Vuejs,javascript,vue.js,Javascript,Vue.js,我希望能够创建一个名称空间的mixin 让我们以此通知mixin为例: (function() { 'use strict'; window.mixins = window.mixins || {} window.mixins.notification = { methods: { show: function(type, message, duration) { duration = dura
(function() {
'use strict';
window.mixins = window.mixins || {}
window.mixins.notification = {
methods: {
show: function(type, message, duration) {
duration = duration || 5000;
new Noty({
type: type,
text: message,
timeout: duration,
theme: 'custom'
}).show();
}
}
}
}());
我可以在我的组件中导入并使用它:
(function() {
'use strict';
Vue.component('basic-component', function() {
mixins: [window.mixins.notification],
created: function() {
this.show();
}
})
})
但我不喜欢它,因为你不知道它是从哪里来的
是否可以为mixin命名名称以便能够按照以下方式执行操作:
(function() {
'use strict';
Vue.component('basic-component', function() {
mixins: [window.mixins.notification],
created: function() {
this.mixins.notification.show();
}
})
})
编辑:这似乎还不可能,我打开了一个问题,请随意评论并分享您对这件事的想法:Vue mixins没有办法这样工作。你必须做一些非常粗糙的事情。然后这真的很糟糕,我不知道VueJS如何“干燥”和可维护,这是一个非常基本的功能。。。