import Vue from 'vue' 默认导入的是vue.runtime.common.js

在利用webpack的Vue项目中,在main.js中使用import Vue from 'vue' 导入的Vue的包,功能不完善,只是提供了runtime-only的方式,并没有提供像在普通网页中使用Vue那样的功能完善。

包的查找规则

(1)在项目根目录中查找有没有node_modules 的文件夹

(2)在node_modules 中,根据包名,找对应的vue文件夹

(3)在vue文件夹中,找一个叫做package.json的包配置文件

(4)在package.json文件中,查找一个main属性【main属性指定了这个包在被加载的时候  的入口文件】

因为在Vue包的package.json文件中main属性指定的入口文件【"main": "dist/vue.runtime.common.js",】,因此,在main.js中使用import Vue from 'vue' 导入的Vue构造函数,功能不完善。

解决办法:

(1)import Vue from '../node_modules/vue/dist/vue.js'

(2)在Vue包的package.json文件中main属性指定的入口文件修改为【"main": "dist/vue.js",】

(3)在项目的webpack.config.js中添加resolve属性

    resolve: {
        alias: {
            // 修改Vue倍导入时包的路径
            "vue$" : "vue/dist/vue.js"
        }
    }

 

你可能感兴趣的:(webpack,Vue)