国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

javascript - vue單頁面應用怎么把樣式抽取到一個獨立文件?

瀏覽:105日期:2023-03-20 08:05:24

問題描述

問題是這樣的現在在做一個SAP應用,webpack配置了抽取文件出來。樣式既沒有抽取成一個文件也沒有被webpack打包到js里面,而是在頁面上生成style標簽了。求大神指教。用的是vue2,webpack2webpack配置:

var path = require(’path’)var vuxLoader = require('vux-loader');var webpack = require(’webpack’);var ExtractTextPlugin = require('extract-text-webpack-plugin');const webpackConfig = { entry: ’./src/main.js’, output: { path: path.resolve(__dirname, ’./dist’), publicPath: ’/dist/’, filename: ’build.js’ }, module: { rules: [ { test: /.vue$/, loader: ’vue-loader’, options: { loaders: { ’scss’: ’vue-style-loader!css-loader!sass-loader’, ’sass’: ’vue-style-loader!css-loader!sass-loader?indentedSyntax’ } } }, { test: /.js$/, loader: ’babel-loader’, exclude: /node_modules/ }, { test: /iview.src.*?js$/, loader: ’babel’ }, { test: /.css$/, use:new ExtractTextPlugin({ filename:’build.css’, ignoreOrder:true }).extract({ use:{ loader:’css-loader’, options:{modules:true } }, fallback:’style-loader’ }) }, { test: /.less$/, loader:’style-loader!css-loader!less-loader’ }, { test: /.(eot|woff|woff2|ttf)$/, loader: ’url-loader?limit=30000&name=[name]-[hash].[ext]’ }, { test: /.(png|jpg|gif|svg)$/, loader: ’file-loader’, options: { name: ’[name].[ext]?[hash]’ } } ] }, vue:{ loaders :{ css: ExtractTextPlugin.extract({fallback:’style-loader’, use:’css-loader’}) } }, resolve: { alias: { ’vue$’: ’vue/dist/vue.esm.js’ }, extensions: [’.js’, ’.vue’, ’.json’] }, devServer: { historyApiFallback: true, noInfo: true }, performance: { hints: false }, devtool: ’#eval-source-map’};module.exports = vuxLoader.merge(webpackConfig, {plugins:[’vux-ui’]});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 }) ])}

package.json:

{ 'name': 'blog', 'description': 'leung blog mobile', 'version': '1.0.0', 'author': 'leung', 'private': true, 'scripts': { 'dev': 'cross-env NODE_ENV=development webpack-dev-server --open --hot --port 8082', 'build': 'cross-env NODE_ENV=production webpack --progress --hide-modules' }, 'dependencies': { 'vue': '^2.2.1' }, 'devDependencies': { 'axios': '^0.16.0', 'babel-core': '^6.0.0', 'babel-loader': '^6.0.0', 'babel-preset-latest': '^6.0.0', 'cross-env': '^3.0.0', 'css-loader': '^0.25.0', 'extract-text-webpack-plugin': '^2.1.0', 'file-loader': '^0.9.0', 'less-loader': '^4.0.3', 'node-sass': '^4.5.0', 'sass-loader': '^5.0.1', 'style-loader': '^0.16.1', 'url-loader': '^0.5.8', 'vue-loader': '^11.1.4', 'vue-router': '^2.3.1', 'vue-style-loader': '^3.0.1', 'vue-template-compiler': '^2.2.1', 'vuex': '^2.2.1', 'vux': '^2.2.1-rc.5', 'vux-loader': '^1.0.57', 'webpack': '^2.2.0', 'webpack-dev-server': '^2.2.0' }}

如果我把這段代碼注釋了就沒報錯了 T_T

vue:{ loaders :{ css: ExtractTextPlugin.extract({fallback:’style-loader’, use:’css-loader’}) } },

搞不懂,求賜教

問題解答

回答1:

下面這個例子給你參考,希望對你有幫助

const path = require(’path’);const webpack = require(’webpack’);const ExtractTextPlugin = require('extract-text-webpack-plugin');const HtmlWebpackPlugin = require(’html-webpack-plugin’);module.exports = { entry: { main: ’./src/index.js’, vendor: [’vue’, ’vue-router’,’vuex’] }, output: { path: path.resolve(__dirname, ’dist’), publicPath: ’’, filename: ’js/build.js’ }, module: { rules: [{test: /.vue$/,use: [{ loader: ’vue-loader’, options: { loaders: { css: ExtractTextPlugin.extract({use: ’css-loader’,fallback: ’vue-style-loader’ }) }, }}] }, {test: /.(js|jsx)$/,use: [{ loader: ’babel-loader’,}],exclude: /node_modules/ }, {test: /.(png|jpg|gif|svg)$/,use: [{ loader: ’file-loader’, options: { name: ’images/[name].[ext]’ }}] } ] }, plugins: [ new webpack.optimize.CommonsChunkPlugin({ name: ’vendor’, filename: ’js/vendor.min.js’, }), new ExtractTextPlugin('css/style.css'), new HtmlWebpackPlugin({ template: ’public/index.html’ }) ], resolve: { alias: { ’vue$’: ’vue/dist/vue.esm.js’ } }, devServer: { contentBase: path.join(__dirname, 'dist'), stats: 'errors-only', port: 9000, historyApiFallback: true, noInfo: true }, performance: { hints: false }, devtool: ’#eval-source-map’}if (process.env.NODE_ENV === ’production’) { module.exports.devtool = ’#source-map’ 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 }) ])}

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 高清一区二区三区免费 | 久久久免费视频观看 | 久久国产精品永久免费网站 | 九九九免费视频 | 视频一区二区三区在线 | 欧美理论大片清免费观看 | 中文精品视频一区二区在线观看 | 成人做爰 | 手机黄色网址 | 久久www免费人成看国产片 | 国产成年人视频 | 国产视频高清在线 | 人成免费网站 | 免费视频网站一级人爱视频 | 狠狠做久久深爱婷婷97动漫 | 美女黄色在线观看 | 欧美精品在线一区 | 欧美黄区| 国内真实愉拍系列情侣 | 久久亚洲综合中文字幕 | 国产美女白丝袜精品_a不卡 | 亚洲久久在线观看 | 国产成人毛片视频不卡在线 | 亚洲欧美在线精品一区二区 | 欧美成人综合在线观看视频 | 三级毛片在线免费观看 | 午夜性a一级毛片 | 成人a区| 成人免费观看www在线 | 亚洲精品在线看 | 国产色啪午夜免费视频 | 草草影院ccyy国产日本欧美 | 亚洲国产爱久久全部精品 | 日本特爽特黄特刺激大片 | 日韩视频在线观看一区二区 | 国产欧美成人免费观看 | 亚洲精品久久久久久久777 | 精品在线小视频 | 一级欧美激情毛片 | 日韩手机看片福利精品 | 欧美一级特黄一片免费 |