Vue.js3:无法导入Vue全局对象
Vue.js 3: Cannot import Vue global object
我快要发疯了,试图将 Vue 3 CLI 输出与各种教程和插件一起使用,这些教程和插件都使用 Vue 对象,如 Vue.createApp(...
中所示。在我的项目中,我可以使用
import {createApp} from 'vue';
createApp(...
但 import Vue from 'vue';
导致 Vue 仍然未定义。我通过 NPM 安装了 Vue 3。显然,关于 NPM 导入有一些关键的问题我不了解,如果导入整个模块不起作用,{createApp}
导入怎么能起作用?
来自package.json:
"dependencies": {
"@babel/polyfill": "^7.12.1",
"apexcharts": "^3.22.1",
"core-js": "^3.6.5",
"d3": "^6.2.0",
"vue": "^3.0.0",
"vue-router": "^4.0.0-rc.1",
"vue3-apexcharts": "^1.0.0"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~4.5.0",
"@vue/cli-plugin-eslint": "~4.5.0",
"@vue/cli-service": "~4.5.0",
"@vue/compiler-sfc": "^3.0.0",
"babel-eslint": "^10.1.0",
"babel-plugin-transform-regenerator": "^6.26.0",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^7.0.0-0"
},
这是我的临时 main.js。这将打印 'undefined' 后跟正确的 createApp 函数定义:
import Vue from 'vue';
import {createApp} from 'vue';
console.log(Vue);
console.log(createApp);
如果您正在使用 CDN Vue
可用作全局变量,可用于通过调用 Vue.createApp({...})
方法 createApp
来创建实例,但如果您使用使用 npm 模块的捆绑器,没有从 vue
模块导入 Vue
对象,因此您应该从中导入 createApp
以创建一个新实例,如 :
import {createApp} from 'vue';
let app=new createApp({...})
app.use(somePlugin)
app.mount("#app")
有关详细信息,请查看 global API
的迁移指南
我快要发疯了,试图将 Vue 3 CLI 输出与各种教程和插件一起使用,这些教程和插件都使用 Vue 对象,如 Vue.createApp(...
中所示。在我的项目中,我可以使用
import {createApp} from 'vue';
createApp(...
但 import Vue from 'vue';
导致 Vue 仍然未定义。我通过 NPM 安装了 Vue 3。显然,关于 NPM 导入有一些关键的问题我不了解,如果导入整个模块不起作用,{createApp}
导入怎么能起作用?
来自package.json:
"dependencies": {
"@babel/polyfill": "^7.12.1",
"apexcharts": "^3.22.1",
"core-js": "^3.6.5",
"d3": "^6.2.0",
"vue": "^3.0.0",
"vue-router": "^4.0.0-rc.1",
"vue3-apexcharts": "^1.0.0"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~4.5.0",
"@vue/cli-plugin-eslint": "~4.5.0",
"@vue/cli-service": "~4.5.0",
"@vue/compiler-sfc": "^3.0.0",
"babel-eslint": "^10.1.0",
"babel-plugin-transform-regenerator": "^6.26.0",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^7.0.0-0"
},
这是我的临时 main.js。这将打印 'undefined' 后跟正确的 createApp 函数定义:
import Vue from 'vue';
import {createApp} from 'vue';
console.log(Vue);
console.log(createApp);
如果您正在使用 CDN Vue
可用作全局变量,可用于通过调用 Vue.createApp({...})
方法 createApp
来创建实例,但如果您使用使用 npm 模块的捆绑器,没有从 vue
模块导入 Vue
对象,因此您应该从中导入 createApp
以创建一个新实例,如 :
import {createApp} from 'vue';
let app=new createApp({...})
app.use(somePlugin)
app.mount("#app")
有关详细信息,请查看 global API
的迁移指南