webpack 打包成功,可是css不起做用

问题: webpack 打包成功,可是css不起做用

问题分析/解决: 缘由有如下几种css

  • 使用了webpack2的语法规则不正确; webpack2要求必须写-loader;
  • 多是只写了css-loader,没有写style-loader;
  • 顺序反了,必须写成 style-loader!css-loader;

扩展node

  1. 问: 若是没写style-loader或者没写css-loader会怎么样; 
    答: 
      没写style-loader则build文件会生成,但你会发现页面中js不起做用; 
      没写css-loader则会直接报错:’You may need an appropriate loader to handle this file type.’ 

  2. 问: style-loadercss-loader的做用是什么? 
    答: 
       style-loader只是没起做用而不报错就意味着它的做用是将样式插入到DOM元素中;结合网上的答案以及观察预览页面发现:style-loader会在页面的header标签里生成内部的<style></style>
       css-loader 会报错,是由于它影响到webpack的build的过程了。结合网上分享以及’You may need an appropriate loader to handle this file type.’报错信息,意味着css-loader的存在使得在js中经过require或者import引入css成功;经过css-loader,能够实如今js文件中经过require的方式,来引入css。

个人配置文件webpack

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

module.exports = {
entry: {
'bundle': './a.js',
},
output: {
path: path.resolve(__dirname, 'build'),
filename: '[name].js',
chunkFilename: '[name].js'
},
module: {
loaders: [
{
test: /\.css$/,
loader: 'style-loader!css-loader'
},
{
test: /\.js[x]?$/,
exclude: 'node_modules/',
loader: 'babel-loader' } ] }, plugins: [ ]};
相关文章
相关标签/搜索