我正在研究Aurelia Sample app,并希望将构建输出( vendor-bundle.js 和 app-bundle.js )部署到{ {1}}而不是默认的www-root\scripts
目录。所以我尝试将 aurelia.json 修改为:
scripts
这确实导致捆绑文件输出到...
"testFramework": {
"id": "jasmine",
"displayName": "Jasmine"
},
"build": {
"targets": [
{
"id": "web",
"displayName": "Web",
"output": "www-root\\scripts"
}
],
"loader": {
...
,但是因为我为我的apllication定义了一个 HTTP.SYS 别名,例如登陆网址为:http://localhost/MyAlias/当我尝试浏览应用时,它会尝试从www-root\scripts
而不是http://localhost/MyAlias/www-root/scripts/app-bundle.js
加载 app-bundle.js 。< / p>
vendor-bundle.js 但是可以从以下网址正确下载:http://localhost/MyAlias/scripts/app-bundle.js
我无法弄清楚要修改的内容,以便从正确的路径获取 app-bundle.js 。
非常感谢任何帮助。
答案 0 :(得分:8)
您可以创建自定义gulp任务,以便在构建过程结束时将捆绑的应用程序复制到www-root
文件夹中。
选择此方法后,无需更改build.targets
中的aurelia.json
。
1。使用aurelia-cli生成器[documentation]生成新任务。
如下所示:
aurelia_project/tasks/dist.js|ts
import * as gulp from 'gulp';
import * as project from '../aurelia.json';
export default function dist() {
return gulp.src(project.dist.sources, { "base" : "." })
.pipe(gulp.dest(project.dist.output));
}
2。我认为最好有一个单独的配置部分用于发布,因此您也可以添加其他文件和文件夹。
aurelia_project/aurelia.json
...
"dist": {
"output": "www-root",
"sources": [
"./scripts/**/*",
"./index.html",
"<other_resource_to_copy>",
...
]
},
....
3. 在构建过程结束时插入此新任务。
aurelia_project/tasks/build.js|ts
export default gulp.series(
readProjectConfiguration,
...
writeBundles,
dist // here goes our custom task
);
4。哦,它也适用于au run --watch
! :)
如果您想尝试一下,我有一个有效的例子here。
答案 1 :(得分:4)
如果有人来这里寻找清理aurelia-cli项目的根目录的方法,这里有一个方法可以使用RequireJS或SystemJS加载器直接构建到您选择的位置:
<Button
android:id="@+id/btn_on_off"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="activar"
android:textColor="#ffffff"
android:textStyle="bold"
android:theme="@style/**MY_STYLE_B**" />
和index.html
移至OUTPUT 打开favicon.ico
并修改以下内容:
aurelia_project/aurelia.json
"build": {
"targets": [
{
"index": "OUTPUT/index.html",
"baseDir": "OUTPUT",
"baseUrl": "scripts",
"output": "OUTPUT/scripts"
}
],
...
}
...
"platform": {
"index": "OUTPUT/index.html",
"baseDir": "OUTPUT",
"baseUrl": "scripts",
"output": "OUTPUT/scripts"
},
进行测试,您应该好好去!