使用Gulp设置TypeScript / Angular

时间:2015-05-10 03:30:52

标签: javascript angularjs typescript gulp browserify

非常熟悉Gulp和Angular,是TypeScript的新手。我一直在使用Browserify捆绑我的JavaScript并管理依赖树,但据我所知,我不想将Browserify与TypeScript一起使用。

在我的主/入口点文件中有这样的东西之前。

require('angular');
require('angular-ui-router');
require('./myModules/testModule')
require('./myControllers/mainController')

angular.module('exampleApp', ['mainController','testModule'])

    .config(...);

}());

这样可以确保所有必要的文件以适当的顺序捆绑到最终的.js应用中。

然而,使用TypeScript(使用gulp-typescript)引用其他文件进行构建的方式似乎是:

/// <reference path="myModule.ts"/>)

但这仅适用于其他TypeScript文件。如何加载我的angular和其他非TS代表?

作为参考,我的构建如下:

var jsStream = function() {
    return gulp.src(PUBLIC + '/js/**/*.ts')
        .pipe(typescript({
            declarationFiles: false,
            sortOutput: true,
            out: 'app.js'
        }))
        .pipe( streamify( rev() ) )
        .pipe( gulp.dest( PATHS.dest.js ) );
};

1 个答案:

答案 0 :(得分:2)

/// <reference path="myModule.ts"/>这样的TypeScript引用用于转换为JS,解析依赖关系,以及文本编辑器或IDE中的Intellisense。如果您希望在TypeScript中引用未使用TypeScript编写的现有库,请在GitHub上查看tsdDefinitelyTyped project

您仍然可以像以前一样使用Browserify进行捆绑。唯一的区别是您需要先通过tsc或正如您提到的gulp-typescript将TypeScript转换为JavaScript。将TS作为JS后,使用Browserify将其与其他文件捆绑在一起。我不知道这个插件是否有用,但似乎有一个名为tsify的TypeScript Browserify插件。也许也要检查一下。

相关问题