首先,我是Angular 2的新手,我的主要背景是C#,ASP.Net,Core和Visual Studios。
我正在尝试通过观看一些教程,视频来开发我在VS2015中的第一个Angular2应用程序。我设法按照步骤操作并使其成功运行。但我真的很困惑,不同的人用不同的方式来实现同样的事情。
例如:
因此,我决定开发具有以下功能的示例应用程序
我的gulpfile.js如下所示:
"use strict";
var gulp = require("gulp");
var del = require('del');
var scriptsSource = "./app/";
var scriptsDest = "./wwwroot/app";
gulp.task('clean', function () {
return del([
scriptsDest
]);
});
gulp.task("js", function () {
gulp.src(scriptsSource + "**/*.js")
.pipe(gulp.dest(scriptsDest));
});
gulp.task("html", function () {
gulp.src(scriptsSource + "**/*.html")
.pipe(gulp.dest(scriptsDest));
});
gulp.task("watch", function () {
gulp.watch(scriptsSource + "**/*.html", ["html"]);
gulp.watch(scriptsSource + "**/*.js", ["js"]);
});
gulp.task("copy-deps", ['clean','html', 'js']);
对于html文件,只要它被更改,它就会自动复制。
但是当我更改.ts文件时,它不会复制.js文件。我发现当我更改.ts文件时,不会自动生成.js文件。只有在我重新构建VisualStudio项目时才会生成新的.js文件。
我的第一个问题是......它应该是那样的吗?它是否完全依赖于VS build命令?一些程序员没有使用VS作为他们的IDE。他们如何从.ts文件生成.js文件?
主要问题是我的gulp-watch任务没有复制新生成的文件。它只复制已存在的文件(不依赖于打字稿文件)。它完全忽略了新生成的文件。每当我更改ts文件时,我必须再次运行两个任务(clear& copy-des)。
请您指导我如何在VS2015中达到上述要求?如果我没有朝着正确的方向前进,请随时向我推荐。
我更喜欢从一开始就采取正确的方式,而不是解决因不良做法而产生的问题。谢谢大家。