create-react-app項目添加less配置

來源:互聯網
上載者:User

標籤:http   anyway   clu   work   react   prefix   blog   str   bat   

使用create-react-app 建立的項目預設不支援less,以下增加less配置的步驟

暴露設定檔

create-react-app產生的項目文,看不到webpack相關的設定檔,需要先暴露出來,使用如下命令即可:

npm run eject
安裝 less-loader 和  less
npm install less-loader less --save-dev
修改 webpack配置

修改 webpack.config.dev.js 和 webpack.config-prod.js 設定檔

改動1:

/\.css$/ 改為 /\.(css|less)$/,, 修改後如下:

exclude: [  /\.html$/,  /\.(js|jsx)$/,  /\.(css|less)$/,  /\.json$/,  /\.bmp$/,  /\.gif$/,  /\.jpe?g$/,  /\.png$/,],

  

改動2:

  • test: /\.css$/ 改為 /\.(css|less)$/
  • test: /\.css$/ 的 use 數組配置增加 less-loader
  • 修改後如下:
  • {  test: /\.(css|less)$/,  use: [    require.resolve(‘style-loader‘),    {      loader: require.resolve(‘css-loader‘),      options: {        importLoaders: 1,      },    },    {      loader: require.resolve(‘postcss-loader‘),      options: {        // Necessary for external CSS imports to work        // https://github.com/facebookincubator/create-react-app/issues/2677        ident: ‘postcss‘,        plugins: () => [          require(‘postcss-flexbugs-fixes‘),          autoprefixer({            browsers: [              ‘>1%‘,              ‘last 4 versions‘,              ‘Firefox ESR‘,              ‘not ie < 9‘, // React doesn‘t support IE8 anyway            ],            flexbox: ‘no-2009‘,          }),        ],      },    },    {      loader: require.resolve(‘less-loader‘) // compiles Less to CSS    }  ],},

 

create-react-app項目添加less配置

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.