我在使用webpacks代码拆分功能时遇到麻烦。我正在尝试为我的应用程序中的两条不经常访问的路由指定2个命名块。 mysite.com/settings和mysite.com/access。

这是我的webpack.config.coffee

module.exports =

  contentBase: "#{__dirname}/src/"

  cache: true

  entry:
    app: './src/coffee/app'
    head: './src/coffee/head'

  output:
    path: path.join(__dirname, 'build')
    publicPath: '/'
    filename: '[name].js'
    chunkFilename: '[name]-[chunkhash].js'

  plugins: []

这是我的router.coffee
access: (slug) ->

    _this = @
    require.ensure ['../view/page/access-page.coffee'], (require) ->
      AccessPage = require '../view/page/access-page.coffee'
      accessPage = AccessPage.getInstance()
      accessPage.render() unless accessPage.isRendered
      _this.showPage accessPage
    , 'access'


settings: (slug) ->

    _this = @
    require.ensure ['../view/page/settings-page.coffee'], (require) ->
      SettingsPage = require '../view/page/settings-page.coffee'
      settingsPage = SettingsPage.getInstance()
      settingsPage.render() unless settingsPage.isRendered
      _this.showPage settingsPage
    , 'settings'

我没有使用webpack开发服务器,而是通过使用以下cmd-line工具进行观看
webpack -d --progress --colors --watch

问题在于,当需要文件时,它会忽略名称,因为您可以看到格式为'[name]-[hash] .js',它会生成具有正确格式的文件,例如settings-2j3nekj2n3ejkn2.js,但是在开发过程中,当我尝试加载页面时,浏览器抱怨找不到“-2j3nekj2n3ejkn2.js”,因此文件映射忽略了名称。如果我省略名字,那么它就可以了。

所以问题是如何正确设置多个命名块。提前致谢。

注意我已经在https://github.com/webpack/docs/wiki/code-splitting的文档中检查了他们的示例

我也关注了他们的优化文档
https://github.com/webpack/docs/wiki/optimization

但是我被困住了

最佳答案

好了,简单的答案是-[nameName不支持[name =]。

Webpack的出色人员实际上已经听到了我的哭泣并实现了它

这是提交
https://github.com/webpack/webpack/commit/03c87c11a4219ae6ec6bfe87e570a0dacceac859

由于以下问题,我做了
https://github.com/webpack/webpack/issues/358

自Beta ^ 1.3.2起已经可用

09-30 17:29
查看更多