プロジェクトを Angular 1 から Angular 2 に変換しようとしています。
これは、いくつかの共通コードを含むクライアントおよびサーバー プロジェクトです (したがって、まとめておきます)。クライアント側で Angular 2 を使用したいので、ng2 QuickStartに従いました。現在、プロジェクト内でビルドしようとしています。
TSD依存関係のタイピングを管理するために使用しています。これらの依存関係の一部は、依存socket.ioしていnode.d.tsます。私の問題は、angular2すでにアンビエント定義を公開して作成しているため、使用しnode.d.tsたいときに2つの定義間で競合が発生することです:
TSDangular2
typings\node\node.d.ts(961,9): error TS2300: Duplicate identifier 'path'.
これが私のgulpタスクです:
gulp.task('build.conflict', function(){
var browserProject = tsc.createProject('browser.tsconfig.json', {
typescript: typescript
});
var src = [
'src/browser/**/*.ts',
'typings/**/*.d.ts' // commenting out this line results in unknown modules
];
var result = gulp.src(src)
.pipe(tsc(browserProject));
return result.js
.pipe(gulp.dest('build/browser'));
});
私の問題を示す簡単なリポジトリもセットアップしました。タイピングを維持しながら、このエラーを解決するにはどうすればよいですかTSD。(最善の解決策はangular2、その内部を公開しないようにすることですnode.d.ts)