3
我試圖在我的redux應用程序中添加redux-persist。沒有Uglify的Webpack沒有給出「意想不到的令牌〜」與減少餘數
我正在使用webpack捆綁我的JavaScript,並且在開發中,redux-persist包按預期工作。 (寫在CoffeeScript中)我的開發配置是這樣的:
debug: true
devtool: "eval"
output:
path: path.resolve 'app/static/bundles/'
filename: '[name].js'
publicPath: "#{devServer}:#{port}/app/static/bundles/"
plugins: [
new webpack.NamedModulesPlugin
new webpack.HotModuleReplacementPlugin
new webpack.NoErrorsPlugin
new BundleTracker filename: './webpack/webpack-stats.json'
]
部署到生產之前,我建立使用生產NODE_ENV但跳過醜化插件的步驟,以節省時間「分期」捆綁,因爲我經常重建這個在部署之前捆綁多次。然而,如果我需要redux-persist
我的來源的任何地方,建立此捆綁包是成功的,但該頁面無法加載,並且我得到錯誤Unexpected Token ~
,我已經追溯到json-stringify-safe
依賴redux-persist
。在「升級」的配置是這樣的:
output:
path: path.resolve 'app/static/dist/'
filename: '[name].js'
sourceMapFilename: "[name].map.js"
debug: false
cache: false
devtool: "source-map"
plugins: [
new BundleTracker filename: './webpack/webpack-stats-staging.json'
new webpack.DefinePlugin
'process.env':
'NODE_ENV': JSON.stringify 'production'
new webpack.NamedModulesPlugin
new webpack.optimize.OccurenceOrderPlugin
new ExtractTextPlugin "[name].css"
]
這一點,我的生產配置之間的唯一區別是,它不包括醜化,但是當我使用這個配置,一切正常:
output:
path: path.resolve 'app/static/dist/'
filename: '[name].js'
sourceMapFilename: "[name].map.js",
devtool: "source-map"
debug: false
plugins: [
new BundleTracker filename: './webpack/webpack-stats-prod.json'
new webpack.DefinePlugin
'process.env':
'NODE_ENV': JSON.stringify 'production'
new webpack.optimize.OccurenceOrderPlugin
new ExtractTextPlugin "[name].css"
new webpack.optimize.UglifyJsPlugin
sourceMap: false
compressor:
warnings: false
]