我们目前使用 requirejs/backbone 进行开发,使用 firebug 进行调试。我们正在考虑迁移到 Ember 并使用 ember appkit。
我注意到由于新的 ES6 javascript 模块,应用程序需要预编译成单个 javascript 文件 app.js。
我担心这会使调试问题变得困难,因为您正在处理一个巨大的单个文件,而不是我们目前拥有的小文件,并且可以在 firebug 中轻松找到。
这对人们来说是个问题吗,有什么好的解决方案吗?
我们目前使用 requirejs/backbone 进行开发,使用 firebug 进行调试。我们正在考虑迁移到 Ember 并使用 ember appkit。
我注意到由于新的 ES6 javascript 模块,应用程序需要预编译成单个 javascript 文件 app.js。
我担心这会使调试问题变得困难,因为您正在处理一个巨大的单个文件,而不是我们目前拥有的小文件,并且可以在 firebug 中轻松找到。
这对人们来说是个问题吗,有什么好的解决方案吗?
如前所述kingpin2k
,Ember App Kit 已被Ember-CLI有效取代。我建议调查一下。根据您的需求和计划,Ember-CLI 可能适合也可能不适合您的情况。有些人已经成功地将 Ember-CLI 应用程序投入生产,但这是全新的技术,所以请谨慎购买。
Ember-CLI 提供了一个基于 Broccoli 的构建系统,它将转换 ES6 模块,将输出压缩到单个 Javascript 文件中,等等。Ember-CLI 仍在大力开发中,但已经非常完善。在我看来,干净的代码组织和快速的 Broccoli 构建真的很棒。
Firefox 和 Chrome 等现代浏览器带有一个集成调试器,当提供源映射时,它将向您显示原始源。这最终将在您运行开发服务器时提供给 Ember-CLI 项目中的浏览器。但是,此功能目前不完整。现在可以在 Ember-CLI 中获得一些源映射支持,看看这个问题。
与此同时,当然还有更多调试代码的方法,我怀疑在 Ember-CLI/Broccoli 中提供适当的源映射支持之前,自由使用控制台日志记录等可能就足够了。运行 Ember-CLI 的 live-reload 开发服务器意味着当您在项目中更改和保存文件时,结果几乎会立即显示在浏览器中;Broccoli 的构建速度非常快。
请记住,将所有 Javascript 代码压缩并组合到单个输出文件中是 Ember、Angular 和 Backbone 等单页应用程序框架中的常用方法。使用断点调试这些应用程序将越来越多地通过浏览器的调试工具与源映射相结合。
更新
目前 Ember 核心团队积极推荐 Ember-CLI。这真是太棒了。