javascript - Webpack 多个命名 block 在运行时忽略名称

标签 javascript coffeescript amd commonjs webpack

我在使用 webpack 代码拆分功能时遇到问题。我试图在我的应用程序中为两条不经常访问的路由设置 2 个命名 block 。 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 行工具简单地观看

webpack -d --progress --colors --watch

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

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

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

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

但是我卡住了

最佳答案

好吧,简单的答案是 - [chunkName 不支持 name=。

Webpack 的牛逼们听到了我的呼声并实现了它

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

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

从 Beta ^1.3.2 开始可用

关于javascript - Webpack 多个命名 block 在运行时忽略名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24743114/

相关文章:

javascript - 在xml中调用php变量

build - Sublime Text 构建 : cannot find the file specified

javascript - 我如何将 ts 代码编译为 'require([' somemodule'])

javascript - 使用 RequireJS 优化器进行局部优化

javascript - gridx lazyedit 使用 Dojo.JsonRest 调用 grid.model.save() 解析 500 put 响应

javascript - 如何仅在 JTSAGE 日期选择器中显示日期之前

javascript - 如何在使用 javascript 的 ASP.NET 中单击日历并将日期复制到文本框而不进行回发?

javascript - Coffeescript 在悬停时添加按钮

jquery - 错误循环遍历循环并在满足条件时中断

rest - Dojo dgrid 未显示 "No Results found"消息