我正在開發一個節點模塊和一個示例應用程序。我試圖將調試斷點添加到模塊中的某個源文件,但我無法讓VSC識別它。使用最新版本的Typescript和VSC。打字稿源中的斷點不起作用
編輯:這應該是一個節點應用程序,沒有瀏覽器擔心。
EDIT2:這是正回購與發行repo with problem. 這裏是我的當前設置
├── dist
│ ├── index.d.ts
│ ├── index.js
│ ├── index.js.map
│ ├── main.d.ts
│ ├── main.js
│ ├── main.js.map
├── examples
│ ├── index.js
│ └── package.json
├── gulpfile.js
├── package.json
├── src
│ ├── index.ts
│ ├── main.ts
├── tsconfig.json
├── tslint.json
我正在開發中examples/index.js
的例子,我在src/main.ts
此設置斷點是我的VSC launch.json配置
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch TypeScript",
"type": "node",
"request": "launch",
"program": "${workspaceRoot}/examples/index.js",
"sourceMaps": true,
"outDir": "${workspaceRoot}/src",
"args": [
"--nolazy"
]
}
]
}
我tsconfig.json
{
"compilerOptions": {
"target": "es2015",
"module": "commonjs",
"sourceMap": true,
"outDir": "dist",
"declaration": true,
"rootDir": "src"
},
"exclude": [
"node_modules",
"examples",
"dist"
]
}
我一飲而盡任務
gulp.task('default', function() {
var tsResult = tsProject.src('tsconfig.json')
.pipe(sourcemaps.init())
.pipe(ts(tsProject));
return merge([
tsResult.dts.pipe(gulp.dest('dist')),
tsResult.js
.pipe(sourcemaps.write('.', {includeContent: false, sourceRoot: 'src'}))
.pipe(gulp.dest('dist'))
]);
});
如何sourcemaps來了把
{"version":3,"sources":["main.ts"],"names":[],"mappings":";CAAC,...CAAC","file":"main.js","sourceRoot":"src"}
打字稿文件永遠不會被執行,它們會被轉換爲Javascript,這就是運行的內容。我不確定您是否可以在VS中的JavaScript文件中放入代碼中斷,但是您可以使用開發人員工具。 –
我還應該澄清,這些是節點應用程序 – wasdwasdwasd
哦,那麼我不知道,對不起。 –