Webpack 导入vue.js插件未定义
我有一个项目是vue.js插件,另一个是vue.js SPA 但我尝试在SPA项目中导入vue.js插件,但始终未定义 vue.js插件导出方式如下:Webpack 导入vue.js插件未定义,webpack,ecmascript-6,vue.js,babeljs,Webpack,Ecmascript 6,Vue.js,Babeljs,我有一个项目是vue.js插件,另一个是vue.js SPA 但我尝试在SPA项目中导入vue.js插件,但始终未定义 vue.js插件导出方式如下: export function install(Vue,config){ //do something } import MyPlugin from 'my-plugin' console.log(MyPlugin)//undefined Vue.use(MyPlugin)//throw error 'Cannot read propert
export function install(Vue,config){
//do something
}
import MyPlugin from 'my-plugin'
console.log(MyPlugin)//undefined
Vue.use(MyPlugin)//throw error 'Cannot read property 'install' of undefined'
并且它的网页输出设置为umd
我像这样导入我的插件:
export function install(Vue,config){
//do something
}
import MyPlugin from 'my-plugin'
console.log(MyPlugin)//undefined
Vue.use(MyPlugin)//throw error 'Cannot read property 'install' of undefined'
所以我检查了编译的bundle.js
中的代码,然后我看到了这个
console.log(_myplugin2.default);
但我如何才能强制使用
\u myplugin2
作为插件?Webpack假设您已导出默认属性
您可以这样做:
export default {
install: function(Vue,config) {
//do something
}
}
如果不想使用默认值
,则需要使用命名变量将其导出:
export const MyPlugin = {
install: function(Vue,config) {
//do something
}
}
然后在导入时具体引用该变量引用:
import { MyPlugin } from 'my-plugin'
Webpack假定您已导出默认属性
您可以这样做:
export default {
install: function(Vue,config) {
//do something
}
}
如果不想使用默认值
,则需要使用命名变量将其导出:
export const MyPlugin = {
install: function(Vue,config) {
//do something
}
}
然后在导入时具体引用该变量引用:
import { MyPlugin } from 'my-plugin'
我终于使用另一个脚本作为网页条目
entry.js:
module.exports=require('./main')
main.js:
function install(Vue,config){
//something
}
export default {install}
然后可以在窗口中访问它。myplugin
和从“myplugin”导入myplugin
我最后使用另一个脚本作为网页条目
entry.js:
module.exports=require('./main')
main.js:
function install(Vue,config){
//something
}
export default {install}
然后可以在窗口中访问它。myplugin
和从“myplugin”导入myplugin
我尝试了这个方法,但当我在html脚本标记中包含脚本时,我需要使用额外的默认值
我想让模块可以从节点模块导入,并通过脚本标记包含在其中不确定您的意思,我已经在我的答案中添加了一个工作示例,我的意思是当我使用您的代码时,在浏览器中包含build.js
(模块)将模块输出到window.myplugin.default
而不是window.myplugin
我添加了一个不使用default
的示例。但是,为什么在构建应用程序后需要访问插件呢?我尝试了这个方法,但是当我在html脚本标记中包含脚本时,我需要使用额外的默认值我想使模块可以从节点模块导入并通过脚本标记包含不确定您的意思,我在回答中添加了一个工作示例,我的意思是,当我使用您的代码时,在浏览器中包含build.js
(模块)将模块输出到window.myplugin.default
而不是window.myplugin
我添加了一个不使用default
的示例。但是,为什么在构建应用程序后需要访问插件?