我正在使用Vue-cli和webpack-simple来创建一个小应用程序 .
在assets文件夹中,默认为logo.png . 在那里我添加了一个main.css文件 - 并链接它我 index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Lorem ipsum</title>
<link rel="stylesheet" href="./src/assets/main.css">
</head>
<body>
<div id="app"></div>
<script src="/dist/build.js"></script>
</body>
</html>
在localhost上工作得很好,但是当我在终端中构建应用程序时(npm run build) - >正在创建一个/ dist文件夹 . 如果我将此文件夹和index.html放在网上,则CSS文件无法正常工作 . 我怎样才能使它工作?因为我想添加更多文件夹(如自定义js - /js/some.js; /css/media.css;等)
这是我的 webpack.config.js:
var path = require('path')
var webpack = require('webpack')
module.exports = {
entry: './src/main.js',
output: {
path: path.resolve(__dirname, './dist'),
publicPath: '/dist/',
filename: 'build.js'
},
module: {
rules: [
{
test: /\.css$/,
use: [
'vue-style-loader',
'css-loader'
],
}, {
test: /\.vue$/,
loader: 'vue-loader',
options: {
loaders: {
}
// other vue-loader options go here
}
},
{
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/
},
{
test: /\.(png|jpg|gif|svg)$/,
loader: 'file-loader',
options: {
name: '[name].[ext]?[hash]'
}
}
]
},
resolve: {
alias: {
'vue$': 'vue/dist/vue.esm.js'
},
extensions: ['*', '.js', '.vue', '.json']
},
devServer: {
historyApiFallback: true,
noInfo: true,
overlay: true
},
performance: {
hints: false
},
devtool: '#eval-source-map'
}
if (process.env.NODE_ENV === 'production') {
module.exports.devtool = '#source-map'
// http://vue-loader.vuejs.org/en/workflow/production.html
module.exports.plugins = (module.exports.plugins || []).concat([
new webpack.DefinePlugin({
'process.env': {
NODE_ENV: '"production"'
}
}),
new webpack.optimize.UglifyJsPlugin({
sourceMap: true,
compress: {
warnings: false
}
}),
new webpack.LoaderOptionsPlugin({
minimize: true
})
])
}
我找不到任何论坛上的解决方案和Sry因为我的英语不好:)
1 回答
使用
webpack-simple
默认情况下,css将构建的js捆绑在一起,因此您无需从index.html
显式加载它