Page 385 - AngularJS权威教程
P. 385
26.6 使用 Yeoman 构建 365
'*.{ico,png,txt,xml}', // <~添加xml扩展名 19
'.htaccess',
// ...
这两个命令就绪后,我们就可以使用Yeoman构建应用了,它将会构建app/目录以及www/目 20
录内的应用程序。
$ grunt build 21
这条命令会设置这个基础应用使用Yeoman,但是对那些我们想要用来真正构建移动应用的
开发工具并不适用。 22
26.6.2 装配Yeoman构建 23
注意,在开发应用程序时,我们不能从CDN提取远程资源。默认情况下,Yeoman会设置应
用从Google CDN加载脚本。因此,必须稍微修改一下index.html模板,通过将script标签包括在 24
usemin构建脚本内的方式放弃从CDN加载jquery和angular脚本,就像这样:
<!-- 25
添加下面这行配置,然后在script标签之后添加一个endbuild
-->
<!--build:jsscripts/library.js--> 26
<script src="bower_components/jquery/jquery.js"></script>
<script src="bower_components/angular/angular.js"></script>
<!--endbuild-->
27
26.6.3 构建移动部分
28
为了使用Yeoman这个工具构建移动应用,你可以给Grunt添加一些任务定义,从而创建一个
构建、测试和部署到设备的程序。
29
Cordova有两个不同的用于构建应用的文件(二进制文件):一个是platforms/目录中的本地构
建工具(用于真实的编译原生应用程序)和一个全局二进制文件(用于构建通过Cordova的create 30
命令创建在根目录中的应用程序)。
为了正常构建应用程序,你可以从根目录运行Cordova构建命令。Cordova会复制www/目录 31
到不同平台的适当位置。
$ cordova build 32
你也可以创建一个任务来做这件事,这样就可以使用Grunt进行标准构建工作。为了支持这
一点,需要安装一个叫做grunt-shell的Grunt库。你可以使用npm安装这个库。 33
$ npm install --save-dev grunt-shell
接下来,还需要定义shell命令配置。我们将创建两个命令:一个用于在计算机的移动设备 34
模拟器中模拟运行应用,另一个用于将应用部署到真实的设备中。
uglify: { 35
// ...
},
shell: { 36
build: {