0
我有一個項目是用腳本編寫的(lib項目),並由另一個用腳本編寫的項目(應用程序項目)使用。 lib項目編譯爲一個js文件並生成一個聲明文件。一切正常,但生成的聲明文件中包含的頂級爲什麼使用引用生成Typescript聲明?
/// <reference path="typings/index.d.ts" />
這個參考的lib項目有旁tsconfig.json
一個typings
目錄,但它只是需要的lib項目。它不應該被包含在聲明文件中作爲參考。這是我的tsconfig
{
"compilerOptions": {
"module": "commonjs",
"experimentalDecorators": true,
"declaration": true,
"noImplicitAny": false,
"removeComments": true,
"preserveConstEnums": true,
"outFile": "proj-lib.js",
"sourceMap": true
},
"include": [
"./js/**/*.ts"
]
}
爲什麼我的聲明文件包含引用?
治標不治本
使用gulp-regex-replace
刪除從申報文件的引用。
tsResult.dts
.pipe(replace({regex: /\/\/\/\s*<reference[^>]+>\s*/g, replace: ''})) // remove references in declaration file
.pipe(gulp.dest(target));
這並不理想。我希望有一個tsc解決方案。
我不明白你的答案。我想'd.ts'文件,但我不想在那些生成的文件中引用。 –