Ember.js 将Ember CLI项目资产编译为多个JS文件

Ember.js 将Ember CLI项目资产编译为多个JS文件,ember.js,ember-cli,Ember.js,Ember Cli,我有一个需要多个JS文件的项目。一些用例: IE仅包含我不想要的条件注释 可下载的移动设备 我想延迟加载的登录页上未包含的大型文件 ember cli似乎允许多个CSS文件,但不允许多个JS文件: venter code herear app = new EmberApp({ outputPaths: { app: { js: { app: '/assets/app.js', ie: '/assets/ie.js' }

我有一个需要多个JS文件的项目。一些用例:

  • IE仅包含我不想要的条件注释 可下载的移动设备
  • 我想延迟加载的登录页上未包含的大型文件
ember cli似乎允许多个CSS文件,但不允许多个JS文件:

venter code herear app = new EmberApp({
  outputPaths: {
    app: {
      js: {
        app: '/assets/app.js',
        ie: '/assets/ie.js'
      }
    }
  }
});
错误:

Object #<Object> has no method 'slice'
TypeError: Object #<Object> has no method 'slice'
    at module.exports (/Users/<me>/Projects/<my-app>/node_modules/ember-cli/node_modules/broccoli-sourcemap-concat/index.js:15:30)
    at EmberApp.concatFiles (/Users/<me>/Projects/<my-app>/node_modules/ember-cli/lib/broccoli/ember-app.js:261:10)
    at EmberApp.javascript (/Users/<me>/Projects/<my-app>/node_modules/ember-cli/lib/broccoli/ember-app.js:864:16)
    at EmberApp.toArray (/Users/<me>/Projects/<my-app>/node_modules/ember-cli/lib/broccoli/ember-app.js:1159:10)
    at EmberApp.toTree (/Users/<me>/Projects/<my-app>/node_modules/ember-cli/lib/broccoli/ember-app.js:1181:30)
    at Object.<anonymous> (/Users/<me>/Projects/<my-app>/Brocfile.js:35:22)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
对象#没有方法“切片”
TypeError:对象#没有方法“切片”
在module.exports(/Users//Projects//node_modules/ember cli/node_modules/brocoli sourcemap concat/index.js:15:30)
位于EmberApp.concatFiles(/Users//Projects//node_modules/ember cli/lib/brocoli/ember app.js:261:10)
位于EmberApp.javascript(/Users//Projects//node_modules/ember cli/lib/brocoli/ember app.js:864:16)
在EmberApp.toArray(/Users//Projects//node_modules/ember cli/lib/brocoli/ember app.js:1159:10)
在EmberApp.toTree(/Users//Projects//node_modules/ember cli/lib/brocoli/ember app.js:1181:30)
反对。(/Users//Projects//Brocfile.js:35:22)
在模块处编译(Module.js:456:26)
在Object.Module.\u extensions..js(Module.js:474:10)
在Module.load(Module.js:356:32)
在Function.Module.\u加载(Module.js:312:12)

指南中没有关于多个JS文件的内容,除了供应商;是否有我缺少的内容或这是缺少的功能?

编辑
app/index.html
并将要加载的脚本的路径添加到其他脚本之上。它应该是这样的:

<!--[if lt IE 8]>
<script src="assets/polyfill.js"></script>
<![endif]-->
<script src="assets/vendor.js"></script>
<script src="assets/my-application.js"></script>


要为提供
polyfill.js
文件,您可以将代码添加到
public/assets/polyfill.js
。这将使文件静态可用。

这并不能解决项目通过Ember应用程序生成多个JavaScript文件的问题。“包括”任何数量和类型的文件都很容易,但这不是最初问题的内容。