nodejs - typescript tsx
gulp-typescript: Problemas al usar createProject (1)
He estado tratando de usar gulp-typescript con cierto grado de éxito, pero tengo un pequeño problema. Todo mi código está almacenado en ''src'' y quiero que se compile en ''.tmp'' pero sin incluir ''src''.
aquí está mi código, creo que el problema es que pasar un valor (glob) a tsProject.src no es compatible, entonces obtengo /.tmp/src/aTypescriptFile.js por ejemplo
Este código que obtuve directamente del repositorio github, lo que realmente no entendí es por qué gulp.src es reemplazado por tsProject.src
Algunas ideas ? Realmente necesito incorporar mi archivo tsconfig.json.
let tsProject = plugins.typescript.createProject(''./tsconfig.json'');
return tsProject.src(''/src/**/*.ts'')
.pipe(plugins.typescript(tsProject))
.pipe(plugins.sourcemaps.init())
.pipe(plugins.sourcemaps.write(''.''))
.pipe(gulp.dest(''.tmp''));
** EDIT **
Más información, he logrado limitarlo usando un globo ocular reemplazando el
return tsProject.src(''/src/**/*.ts'')
con
return gulp.src(''/src/**/*.ts'')
El problema ahora es que recibo un error sobre los desaparecidos.
src/testme.ts(4,10): error TS2304: Cannot find name ''require''.
mi archivo TSCONFIG.JSON está aquí, que tiene los typings allí.
{
"compilerOptions": {
"target": "ES6",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
},
"files": [
"typings/main.d.ts",
"src/testme.ts"
]
}
Todas las rutas deben pasarse a gulp.src - fuentes y tipificaciones.
Déjanos algunos caminos:
var paths = {
lib: "./wwwroot/",
ts: ["./sources/**/*.ts"],
styles: ["./sources/**/*.scss"],
templates: ["./sources/**/*.html"],
typings: "./typings/**/*.d.ts",
//svg: "./sources/**/*.svg",
};
Podemos pasar una serie de rutas de origen a gulp-typescript:
gulp.task("?typescript:demo:debug", function () {
var tsResult = gulp.src([
paths.typings,
// <...some other paths...>
].concat(paths.ts))
.pipe(sourcemaps.init())
.pipe(ts({
target: "ES5",
experimentalDecorators: true,
noImplicitAny: false
}));
return tsResult.js
.pipe(concat(package.name + ".js"))
.pipe(sourcemaps.write({ sourceRoot: "" }))
.pipe(gulp.dest(paths.lib));
})
Estoy pasando
gulp.src([paths.typings, <...some other paths...>].concat(paths.ts))
pero, por supuesto, también se puede hacer de una manera más simple:
gulp.src([paths.typings, paths.ts])