Page 384 - AngularJS权威教程
P. 384
364 第 26 章 移动应用
当这个过程完成时,在app/目录中就有Yeoman应用了。我们将会在这个位置进行构建移动应
用的所有工作。
在这个工具链中,我们将使用如下流程来构建这个应用:
编写代码;
测试代码(Angular测试);
在模拟器中运行代码(可选);
运行设备测试代码(可选)。
Yeoman构建工具负责前面两个任务。后面两个任务稍后会建立。
Cordova的工作原理就是将www/目录包含到编译后的应用中,因此对www/目录中的文件做
出的任何改变都将会在构建后被包装到编译好的应用程序中。
26.6.1 修改Yeoman以便使用Cordova
默认情况下Yeoman会采用一个不同的结构将应用程序构建到dist/目录中。我们将修改这个构
建目录,让它应用始终构建到www/目录中。
首先,必须保存由Cordova的创建命令构建的www/config.xml文件。我们希望把它从www/中
复制或者移动到app/目录中。
$ cp www/config.xml app/
我们在使用Yeoman构建应用时将这个config.xml文件复制回www/目录中。
为了改变使用Yeoman构建应用时的默认目录,在Gruntfile.js中找到Yeoman配置部分,然后将
dist:属性的值从dist改变为www即可:
// ...
grunt,initConfig({
yeoman: {
app: require('./bower.json').appPath || 'app',
dist: 'www' // <~ 改变这个选项为www
},
watch: {
// ...
接下来,你需要告诉Yeoman,在它复制的文件列表中要包含config.xml文件。幸运的是,这
个过程很容易:只需添加一个字符串到复制任务的文件路径中即可。
在copy:dist配置内,将xml扩展名添加到复制文件列表的匹配模式中就行了:
// ..
},
copy: {
dist: {
file: [{
expand: true,
dot: true,
cwd: '<%= yeoman.app %>',
dest: '<%= yeoman.dist %>',
src: [