2017-05-19 51 views
0

我是一個完整的網絡開發新手,我完全失去了。阿波羅與角度快速入門:未知錯誤

我想開發一個使用Django開發的後端Web應用程序,以及使用Angular開發的前端。我希望Apollo和GraphQL能夠完成後端和前端之間的交互。考慮到這一點,我開始在Django開發幾個簡單的模型,並用Python包石墨烯做一些查詢。它似乎運行良好,所以現在我嘗試開發一個簡單的Angular應用程序,它可以呈現Django創建的模型的實例。

這就是我卡住的地方。我已經下載了Angular教程中使用的Angular Quickstart(https://github.com/angular/quickstart)以開始測試阿波羅。我已經運行在終端以下命令:

$ git clone https://github.com/angular/quickstart.git 
$ cd quickstart 
$ npm install 

此外,安裝阿波羅,我已經運行下面的命令:

$ npm install whatwg-fetch apollo-client apollo-angular graphql-tag --save 

最後,運行本地服務器,我在輸入$ npm start終奌站。而這正是下面引發錯誤:

node_modules/@types/isomorphic-fetch/index.d.ts(8,30): error TS2304: Cannot find name 'fetch'. 

我惹毛了,試圖解決這個問題,我還沒有找到任何這文件,也許是因爲我沒有對web開發有豐富的經驗。

我使用節點v6.10.3,npm v3.10.10和Ubuntu 16.04 LTS。任何意見或幫助解決這個問題,將不勝感激,謝謝。

回答

0

你有類型問題,請嘗試安裝@types/whatwg-fetch

0

已安裝的@types/isomorphic-fetch版本(apollo-client的其中一個代碼)假定您有一個window.fetch的聲明。

TypeScript的2.3版本在dom庫中有這個定義,我認爲這就是爲什麼Apollo和@types/isomorphic-fetch決定以這種方式工作的原因。

解決辦法有兩個:

  • 安裝@types/whatwg-fetch包(或不同)或自行設定fetch
  • 更新打字稿到2.3.x版本(在compilerOptions.lib
指定 dom