【发布时间】:2019-02-27 18:03:34
【问题描述】:
项目结构
Proj
--wwwroot/scripts
--scripts
--tsconfig.json
----Account
------app.ts
--gulpfile.js
在 scripts/Account/app.ts 中给出以下 TypeScript:
function sayHello() {
alert('hello world');
}
一个tsconfig.json文件
{
"compilerOptions": {
"noImplicitAny": true,
"noEmitOnError": true,
"sourceMap": true,
"target": "es6",
"lib": [ "es6", "dom" ]
},
"compileOnSave": false
}
和一个
的 gulpfile.jsvar gulp = require('gulp');
var browserify = require('browserify');
var source = require('vinyl-source-stream');
var tsify = require('tsify');
gulp.task('default', function () {
return browserify({
basedir: '.',
entries: ['scripts/Account/app.ts'],
cache: {},
packageCache: {}
})
.plugin(tsify)
.bundle()
.pipe(source('scripts/Account/app.js'))
.pipe(gulp.dest("wwwroot/scripts"));
});
我在 wwwroot/scripts/app.js 中得到一个输出文件。但是无法从使用它的网页调用该函数,因为它似乎被包装在一个函数中,因此它在全局范围内不可用:
那么我在编译步骤中缺少什么才能调用基本的打字稿函数?我试过导出函数,在这种情况下它只是将它添加到导出对象:
【问题讨论】:
标签: typescript gulp visual-studio-2017 asp.net-core-mvc browserify