我有一个很大的php应用程序,我正在转换为ember.js。在我的php应用程序中,我曾经有过单独的css和js文件,这些文件是在调用特定路由时加载的。什么是在ember.js中实现这一目标的最佳方法,还是有其他最佳实践。现在我正在我的index.html文件中加载所有js和css文件。
<link type="text/css" rel="stylesheet" href="assets/css/gumby.css" media="all" />
<link type="text/css" rel="stylesheet" href="assets/css/pages/global.css" media="all" />
<link type="text/css" rel="stylesheet" href=assets/css/tooltipster.css" media="screen" />
<link type="text/css" rel="stylesheet" href="assets/css/jquery.fancybox.css" media="screen" />
<link type="text/css" rel="stylesheet" href="assets/css/pages/about.css" media="screen" />
<link type="text/css" rel="stylesheet" href="assets/css/pages/admin.css" media="screen" />
<link type="text/css" rel="stylesheet" href="assets/css/pages/global_print.css" media="print" />
js文件:
<script src="assets/js/libs/jquery-1.9.0.min.js"></script>
<script src="js/libs/handlebars-1.1.2.js"></script>
<script src="js/libs/ember-1.6.1.js"></script>
<script src="js/libs/ember-data.js"></script>
<script src="js/app.js"></script>
<script src="js/router.js"></script>
<script src="js/account.js"></script>
<script src="js/message.js"></script>
<script src="js/user.js"></script>
<script src="js/inquiry.js"></script>
我看过这个教程http://madhatted.com/2013/6/29/lazy-loading-with-ember,看起来也是ember-cli。如果人们分享他们为他们的应用做的事情,对我来说真的很有帮助。提前谢谢。
答案 0 :(得分:4)
通常,您可以采用两种途径来预处理资产:缩小,压缩,uglify等。
您可以使用正在使用的后端进行操作。作为示例,您可以使用链接为其asset pipeline或PHP的Assetic使用链接。
如果您不想依赖后端执行此任务,则可以选择使用任何前端构建工具来执行此操作。这里有一些,ember-cli这些天最受欢迎的选项似乎是broccoli,默认设置。其他选择可以是gulp或grunt。所有这些选项都涉及使用终端构建应用程序,使用配置文件作为中心点(Brocfile.js
,Gruntfile.js
等。)
这主要取决于个人偏好。举个例子,我可能会为小项目使用Rails资产管道,而如果我要处理更大的项目,我会使用ember-cli
和broccoli
。