webpack打包vue后运行出现Error in mounted hook: (found in <Root>)

这两天学习使用webpack,尝试把vue,vue-resoucese,mdui,还有自己写的main.js和style.css打包成bundle.js,打包成功没有报错,但是vue会在console报错不能用,很疑惑,来请教一下大家

图片描述

入口main.js
图片描述

但是html引入bundle.js后vue是报错的,console页面如下
图片描述

图片描述

图片描述

这里是webpack的配置文件

var webpack = require('webpack');
var path = require('path');

module.exports = {
    entry: './src/main.js',
    output: {
        path: path.resolve(__dirname, "dist"),
        filename: 'bundle.js'
    },
    module: {
        loaders: [
            {
                test: /\.css$/,
                loader: ['style-loader', 'css-loader']
            },
            {
                test: /\.(svg|ttf|eot|woff|woff2)$/,
                loader: 'file-loader',
                query: {
                    name :'fonts/[name].[ext]',
                    publicPath: 'dist/'
                }
            }
        ]
    },
    resolve: {
        alias: {
            vue: 'vue/dist/vue.js'
        }
    }
}

另外还有一个对输出路径设置的疑惑,在output中指定了输出文件夹是dist/,但是字体的loader用name=fonts/[name].[ext]来指定输出文件夹是在dist/fonts/,但是页面载入字体时,正确得路径是~/test/dist/font/xxxx.tff,但实际引用路径却是~/test/font/xxxx.tff,是我哪里设置得不对吗?

阅读 12.7k
2 个回答

可以给loader单独配置publicPath修正路径

例如:

loader: 'file-loader', query: { name: 'css/[name].[ext]', publicPath: '写上你需要的路径前置并以"/"斜杠结尾' } 

这个loader中单独配置的publicPath是不会影响output中的publicPath的

新手上路,请多包涵

请问你那个报错的问题是怎么解决的,我也遇到了同样的问题,是引用文件的错误吗

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题