摘要:之前在簡書上看到一個入門入門,看這篇就夠了,講得確實很清楚,但是因為博主用的是的版本,和現在普遍默認安裝的版本有一些細節上的差距,所以實際使用的時候就會遇到一些坑,對于想入門的小白如我,造成了不小的困擾。
之前在簡書上看到一個webpack入門(入門Webpack,看這篇就夠了),講得確實很清楚,但是因為博主用的是1.x的版本,和現在普遍默認安裝的2.x版本有一些細節上的差距,所以實際使用的時候就會遇到一些坑,對于想入門的小白如我,造成了不小的困擾。于是,干脆整理了一下我遇到的各種報錯,以備所需。
一 loaderwebpack 2.0之后,不能省略后綴-loader
二 postcss和autoprefixer配置最開始直接把postcss寫在module.exports的配置里,報錯
//webpack配置文件 module.exports = { devtool: "eval-source-map", entry: __dirname + "/app/main.js", output: {...}, module: { loaders: [ { test: /.json$/, loader: "json" }, { test: /.js$/, exclude: /node_modules/, loader: "babel" }, { test: /.css$/, loader: "style-loader!css-loader?modules!postcss-loader" } ] }, postcss: [ require("autoprefixer")//調用autoprefixer插件 ], devServer: {...} }
因為webpack 2.0之后,不允許用戶直接修改配置文件,需要把postcss寫入到plugins里面。報錯信息如圖
于是將postcss部分更改為
plugins:[ new webpack.LoaderOptionsPlugin({ options:{ postcss: [ require("autoprefixer")//調用autoprefixer插件 ], } }) ]
這時問題又來了,報錯,提示語法錯誤,webpack沒有被定義
要解決這個問題,需要在整個webpack.config.js配置文件頭部定義webpack
var webpack = require("webpack");
最終的配置文件如下,此時可以正常運行webpack,看到css中被自動根據瀏覽器添加了前綴,autoprefixer調用成功
//webpack配置文件 var webpack = require("webpack"); module.exports = { /*devtool: "eval-source-map",*/ entry: __dirname + "/app/main.js", output:{ path: __dirname + "/public", filename: "bundle.js" }, module:{ loaders:[ { test: /.json$/, loader: "json-loader" }, { test: /.js$/, exclude: /node_modules/, loader:"babel-loader" }, { test: /.css$/, loader:"style-loader!css-loader?modules!postcss-loader"http://增加modules之后,就會把css的類名傳遞到組件的代碼中,不用擔心在不同模塊中具有相同類名可能造成的問題 } ] }, devServer:{ contentBase: "./public", colors: true, historyApiFallback: true, inline: true }, plugins:[ new webpack.LoaderOptionsPlugin({ options:{ postcss: [ require("autoprefixer")//調用autoprefixer插件 ], } }) ] }三 uglify插件
提示uglifyJsPlugin is not a constructor
其實只要注意大小寫即可。uglify的u要大寫。
正確寫法:
new webpack.optimize.UglifyJsPlugin(),
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/83112.html
摘要:之前做的一個應用,最近把首頁改成了服務端渲染的形式,過程還是很周折的,踩到了不少坑,記錄一些重點,希望有所幫助前端使用的技術棧升級到升級到服務項目地址喜歡的給個,感謝。。。。。。。 之前react做的一個應用,最近把首頁改成了服務端渲染的形式,過程還是很周折的,踩到了不少坑,記錄一些重點,希望有所幫助 前端使用的技術棧 react、react-dom 升級到 v16 react-ro...
摘要:是一款基于的服務端渲染框架,跟的異曲同工。該配置項用于定義應用客戶端和服務端的環境變量。 Vue因其簡單易懂的API、高效的數據綁定和靈活的組件系統,受到很多前端開發人員的青睞。國內很多公司都在使用vue進行項目開發,我們正在使用的簡書,便是基于Vue來構建的。 我們知道,SPA前端渲染存在兩大痛點:(1)SEO。搜索引擎爬蟲難以抓取客戶端渲染的頁面meta信息和其他SEO相關信息,使...
摘要:是一款基于的服務端渲染框架,跟的異曲同工。該配置項用于定義應用客戶端和服務端的環境變量。 Vue因其簡單易懂的API、高效的數據綁定和靈活的組件系統,受到很多前端開發人員的青睞。國內很多公司都在使用vue進行項目開發,我們正在使用的簡書,便是基于Vue來構建的。 我們知道,SPA前端渲染存在兩大痛點:(1)SEO。搜索引擎爬蟲難以抓取客戶端渲染的頁面meta信息和其他SEO相關信息,使...
摘要:所以你編譯后的文件實際上應當只輸出,這就需要在配置里用來控制這樣上面的模塊加載函數會在返回值后面加一個,這樣就只返回的部分。 之前一篇文章分析了Webpack打包JS模塊的基本原理,所介紹的案例是最常見的一種情況,即多個JS模塊和一個入口模塊,打包成一個bundle文件,可以直接被瀏覽器或者其它JavaScript引擎執行,相當于直接編譯生成一個完整的可執行的文件。不過還有一種很常見的...
閱讀 3010·2021-11-23 09:51
閱讀 3617·2021-10-13 09:39
閱讀 2506·2021-09-22 15:06
閱讀 888·2019-08-30 15:55
閱讀 3157·2019-08-30 15:44
閱讀 1787·2019-08-30 14:05
閱讀 3442·2019-08-29 15:24
閱讀 2372·2019-08-29 12:44