使用没有节点的 Emberjs 1.10 编译模板客户端?
Compile templates client side with Emberjs 1.10 without node?
我们的 MVC 应用一直在使用 Ember 1.9 版。现在,对于 1.10,我们似乎需要节点在客户端以某种方式预编译模板,然后才能在应用程序中查看它们,对吗?
不幸的是,我们在一个非常受限的环境中工作,其中 node 和 npm "coming",但我们还没有。我们只是将 handlebars.js 文件包含在 ember 中,以使我们的应用程序在运行时运行。所以我真正的问题 - 有没有办法让我在我的应用程序中继续使用最新版本的车把(或 HTMLbars)和 ember 而无需节点?
如果我遗漏了什么,请告诉我。我阅读了博客 post (http://emberjs.com/blog/2015/02/05/compiling-templates-in-1-10-0.html) 和许多关于此主题的其他讨论,但我似乎无法理解这一点以继续前进。预先感谢您提供的任何说明。
我将根据我对你的问题的肯定很差的理解做出很多假设。如果我告诉你一些你已经知道的事情,请原谅我。
ember.js
脚本本身无法读取 .hbs
文件。如果您使用 <script type="text/x-handlebars">
来定义模板,情况也是如此。同样的道理:在Ember真正理解之前,必须翻译成纯Javascript。
这种转换可以发生在客户端(在浏览器中),也可以由您提前完成。如果它是在客户端完成的,那么 Ember 需要的依赖项比不需要发生的依赖项更多。一直都是这样。
唯一的区别是,现在该依赖项不再被称为 handlebars.js
,而是被称为 ember-template-compiler.js
。
人们谈论 Node、Grunt 或 Ember-CLI 是在谈论用于简化开发过程的工具。通常这些工具会将所有 Ember 依赖项压缩到一个已经是纯粹 Javascript 并且不需要引用任何 .hbs
文件的文件中。
假设您使用 emberjs.org 首页上提供的初学者工具包进行开发,您仍然可以像过去一样继续升级您的应用程序,并且它应该一切正常。只需下载新的 stater 工具包并记住将 index.html
文件中的 <script>
标记更改为引用 ember-template-compiler.js
而不是 handlebars.js
.
为了说明类似的事情:
<script src="js/libs/jquery-1.10.2.js"></script>
<script src="js/libs/handlebars.js"></script>
<script src="js/libs/ember.min.js"></script>
<script src="js/app.js"></script>
变成这样:
<script src="js/libs/jquery-1.10.2.js"></script>
<script src="js/libs/ember-template-compiler.js"></script>
<script src="js/libs/ember.min.js"></script>
<script src="js/app.js"></script>
希望我对你的问题的理解足以帮助你。
我们的 MVC 应用一直在使用 Ember 1.9 版。现在,对于 1.10,我们似乎需要节点在客户端以某种方式预编译模板,然后才能在应用程序中查看它们,对吗?
不幸的是,我们在一个非常受限的环境中工作,其中 node 和 npm "coming",但我们还没有。我们只是将 handlebars.js 文件包含在 ember 中,以使我们的应用程序在运行时运行。所以我真正的问题 - 有没有办法让我在我的应用程序中继续使用最新版本的车把(或 HTMLbars)和 ember 而无需节点?
如果我遗漏了什么,请告诉我。我阅读了博客 post (http://emberjs.com/blog/2015/02/05/compiling-templates-in-1-10-0.html) 和许多关于此主题的其他讨论,但我似乎无法理解这一点以继续前进。预先感谢您提供的任何说明。
我将根据我对你的问题的肯定很差的理解做出很多假设。如果我告诉你一些你已经知道的事情,请原谅我。
ember.js
脚本本身无法读取 .hbs
文件。如果您使用 <script type="text/x-handlebars">
来定义模板,情况也是如此。同样的道理:在Ember真正理解之前,必须翻译成纯Javascript。
这种转换可以发生在客户端(在浏览器中),也可以由您提前完成。如果它是在客户端完成的,那么 Ember 需要的依赖项比不需要发生的依赖项更多。一直都是这样。
唯一的区别是,现在该依赖项不再被称为 handlebars.js
,而是被称为 ember-template-compiler.js
。
人们谈论 Node、Grunt 或 Ember-CLI 是在谈论用于简化开发过程的工具。通常这些工具会将所有 Ember 依赖项压缩到一个已经是纯粹 Javascript 并且不需要引用任何 .hbs
文件的文件中。
假设您使用 emberjs.org 首页上提供的初学者工具包进行开发,您仍然可以像过去一样继续升级您的应用程序,并且它应该一切正常。只需下载新的 stater 工具包并记住将 index.html
文件中的 <script>
标记更改为引用 ember-template-compiler.js
而不是 handlebars.js
.
为了说明类似的事情:
<script src="js/libs/jquery-1.10.2.js"></script>
<script src="js/libs/handlebars.js"></script>
<script src="js/libs/ember.min.js"></script>
<script src="js/app.js"></script>
变成这样:
<script src="js/libs/jquery-1.10.2.js"></script>
<script src="js/libs/ember-template-compiler.js"></script>
<script src="js/libs/ember.min.js"></script>
<script src="js/app.js"></script>
希望我对你的问题的理解足以帮助你。