由於Visual Studio 2017剛剛推出,我以爲我會回答我是如何解決這個問題的,因爲在使用「skeleton-typescript-aspnetcore」時仍然有很多錯誤。
使用https://github.com/aurelia/skeleton-navigation/releases/tag/1.1.2爲出發點,這些都讓它運行步驟:
當你第一次運行該項目,你會得到錯誤抱怨位於/測試一些文件/是不是在「ROOTDIR」。在您的tsconfig.json中,rootDir被定義爲「src /」,這可以通過簡單地將您的測試文件夾移動到src文件夾中來解決。這將導致新的錯誤,因爲這些文件中定義的路徑現在已經改變。您將需要編輯應用程序,子路由器和用戶導入像這樣: import {Users} from '../../users';
智能感知應該幫助你在這裏。
命令gulp test
也不會更改爲新的路徑運行之前,你可以在karma.conf.js更改路徑:
files: [
'src/test/unit/setup.ts',
'src/test/unit/*.ts'
],
下一頁文件users.ts會拋出這樣的錯誤Type 'Response' is not assignable to type 'any[]'
。你需要告訴打字稿你述說這樣的:public users : Object = [];
或者乾脆:public users = {};
的最後一個問題是,你將有很多重複的標識錯誤,在寫這篇文章的原因時這似乎來自TypeScript 2.2.1版所帶來的變化。我不知道具體是什麼突破,但我知道以前的版本2.1.5仍然有效。所以你需要做的是在你的src/skeleton目錄下運行npm install [email protected] --save
,--save只是爲了更新你的package.json文件,如果你願意的話,你也可以自己做。
完成之後,您的大量錯誤(其中20個)應該被解決。但仍有一些錯誤仍然是由重複簽名造成的。再次,TypeScript 2.0+中的事情已經發生了變化,現在有一種獲取和使用聲明文件的簡單方法。下面是關於如何使用@types功能的一個答案:How should I use @types with TypeScript 2,但爲了保持這個簡短和甜蜜,您將不得不轉到您的tsconfig.json文件並明確告訴在何處查找@ types/node文件夾。這將是這個樣子:
"compilerOptions": {
...
"typeRoots": [
"node_modules/@types"
],
"types": [ "node" ]
...
},
希望這有助於這些變化的項目現在應該建立和正確啓動。
編輯: 我最近遇到了一些問題,建設我的項目。我又得到了很多重複的標識符......然而,跨越這個答案我跑SO:TypeScript throws multiple duplicate identifiers
顯然打字稿最新的附帶取定義開箱即用,所以我能夠從鏈接答案運行命令:
npm uninstall @types/whatwg-fetch
升級從打字稿2.1.5到最新:
npm install typescript --save
你甚至可能要通過附加-g
全球安裝打字稿。 此外,這將繼續,除非你註釋掉/刪除URL和從typings.json
globalDependencies爲了WHATWG取,以防止其重新創建本身是一個問題:
"globalDependencies": {
//"url": "github:aurelia/fetch-client/doc/url.d.ts#bbe0777ef710d889a05759a65fa2c9c3865fc618",
//"whatwg-fetch": "registry:dt/whatwg-fetch#0.0.0+20160524142046"
}
然後你就可以刪除的分型文件夾,運行typings install
再次或在typings文件夾中編輯index.d.ts,並刪除引用路徑以獲取whatwg-fetch和url。 希望這可以幫助那些即使在「修復」之後也可能遇到同樣問題的人。
我會打開這個作爲骨架回購的問題,並粘貼到您的項目正在嘗試這一點的鏈接。這不太適合StackOverflow,它更像是一項功能請求。 –
聽起來不錯,謝謝 – even