2016-11-08 277 views
1

我已经使用https://github.com/FountainJS/generator-fountain-webapp设置了一个使用React & Typescript的新项目。我非常喜欢JS使用节点进行正在进行的项目,但不熟悉问题似乎在哪里的TS。TS找不到模块

我已经运行了以下环境的发生器:typescript,react,webpack w/NPM,gulp。

当我运行gulp serve时,我得到下面的输出。我很困惑它为什么找不到这些文件 - 它们都在我的文件系统中。我看其他问题,并没有发现任何能解决我的问题

[23:04:52] Loading /Users/omelvin/github_projects/kaizen/gulp_tasks/browsersync.js 
[23:04:53] Loading /Users/omelvin/github_projects/kaizen/gulp_tasks/karma.js 
[23:04:54] Loading /Users/omelvin/github_projects/kaizen/gulp_tasks/misc.js 
[23:04:54] Loading /Users/omelvin/github_projects/kaizen/gulp_tasks/webpack.js 
[23:04:54] Using gulpfile ~/github_projects/kaizen/gulpfile.js 
[23:04:54] Starting 'serve'... 
[23:04:54] Starting 'webpack:watch'... 
ts-loader: Using [email protected] and /Users/omelvin/github_projects/kaizen/tsconfig.json 
[23:05:01] Time: 6436ms 
     Asset  Size Chunks  Chunk Names 
    index.js 1.11 MB  0  main 
index.js.map 1.32 MB  0  main 

ERROR in ./src/index.tsx 
(5,24): error TS2307: Cannot find module 'react'. 

ERROR in ./src/index.tsx 
(6,27): error TS2307: Cannot find module 'react-dom'. 

ERROR in ./src/index.tsx 
(7,45): error TS2307: Cannot find module 'react-router'. 

ERROR in ./src/index.tsx 
(1,1): error TS6053: File '/Users/omelvin/github_projects/kaizen/typings/index.d.ts' not found. 

ERROR in ./src/app/title.tsx 
(3,24): error TS2307: Cannot find module 'react'. 

ERROR in ./src/app/title.tsx 
(1,1): error TS6053: File '/Users/omelvin/github_projects/kaizen/typings/index.d.ts' not found. 

ERROR in ./src/app/techs/techs.tsx 
(3,24): error TS2307: Cannot find module 'react'. 

ERROR in ./src/app/techs/techs.tsx 
(4,24): error TS2307: Cannot find module 'axios'. 

ERROR in ./src/app/techs/techs.tsx 
(33,10): error TS2339: Property 'state' does not exist on type 'Techs'. 

ERROR in ./src/app/techs/techs.tsx 
(39,24): error TS2503: Cannot find namespace 'Axios'. 

ERROR in ./src/app/techs/techs.tsx 
(40,14): error TS2339: Property 'setState' does not exist on type 'Techs'. 

ERROR in ./src/app/techs/techs.tsx 
(51,17): error TS2339: Property 'state' does not exist on type 'Techs'. 

ERROR in ./src/app/techs/techs.tsx 
(1,1): error TS6053: File '/Users/omelvin/github_projects/kaizen/typings/index.d.ts' not found. 

ERROR in ./src/app/techs/tech.tsx 
(3,24): error TS2307: Cannot find module 'react'. 

ERROR in ./src/app/techs/tech.tsx 
(50,44): error TS2339: Property 'props' does not exist on type 'TechComponent'. 

ERROR in ./src/app/techs/tech.tsx 
(52,17): error TS2339: Property 'props' does not exist on type 'TechComponent'. 

ERROR in ./src/app/techs/tech.tsx 
(54,18): error TS2339: Property 'props' does not exist on type 'TechComponent'. 

ERROR in ./src/app/techs/tech.tsx 
(55,18): error TS2339: Property 'props' does not exist on type 'TechComponent'. 

ERROR in ./src/app/techs/tech.tsx 
(1,1): error TS6053: File '/Users/omelvin/github_projects/kaizen/typings/index.d.ts' not found. 

ERROR in ./src/app/main.tsx 
(3,24): error TS2307: Cannot find module 'react'. 

ERROR in ./src/app/main.tsx 
(1,1): error TS6053: File '/Users/omelvin/github_projects/kaizen/typings/index.d.ts' not found. 

ERROR in ./src/app/header.tsx 
(3,24): error TS2307: Cannot find module 'react'. 

ERROR in ./src/app/header.tsx 
(1,1): error TS6053: File '/Users/omelvin/github_projects/kaizen/typings/index.d.ts' not found. 

ERROR in ./src/app/footer.tsx 
(3,24): error TS2307: Cannot find module 'react'. 

ERROR in ./src/app/footer.tsx 
(1,1): error TS6053: File '/Users/omelvin/github_projects/kaizen/typings/index.d.ts' not found. 

ERROR in /Users/omelvin/github_projects/kaizen/src/app/footer.spec.tsx 
(4,24): error TS2307: Cannot find module 'react'. 

ERROR in /Users/omelvin/github_projects/kaizen/src/app/footer.spec.tsx 
(5,27): error TS2307: Cannot find module 'react-dom'. 

ERROR in /Users/omelvin/github_projects/kaizen/src/app/footer.spec.tsx 
(6,28): error TS2307: Cannot find module 'react-addons-test-utils'. 

ERROR in /Users/omelvin/github_projects/kaizen/src/app/footer.spec.tsx 
(10,1): error TS2304: Cannot find name 'describe'. 

ERROR in /Users/omelvin/github_projects/kaizen/src/app/footer.spec.tsx 
(11,3): error TS2304: Cannot find name 'it'. 

ERROR in /Users/omelvin/github_projects/kaizen/src/app/footer.spec.tsx 
(14,5): error TS2304: Cannot find name 'expect'. 

ERROR in /Users/omelvin/github_projects/kaizen/src/app/footer.spec.tsx 
(1,1): error TS6053: File '/Users/omelvin/github_projects/kaizen/typings/index.d.ts' not found. 
Child html-webpack-plugin for "index.html": 
     Asset Size Chunks  Chunk Names 
    index.html 564 kB  0 
[23:05:01] Finished 'webpack:watch' after 6.45 s 
[23:05:01] Starting 'watch'... 
[23:05:01] Finished 'watch' after 54 ms 
[23:05:01] Starting 'browsersync'... 
[23:05:01] Finished 'browsersync' after 78 ms 
[23:05:01] Finished 'serve' after 6.58 s 
[BS] [BrowserSync SPA] Running... 
[BS] Access URLs: 
-------------------------------------- 
     Local: http://localhost:3000 
    External: http://10.193.122.24:3000 
-------------------------------------- 
      UI: http://localhost:3001 
UI External: http://10.193.122.24:3001 
-------------------------------------- 
[BS] Serving files from: .tmp 
[BS] Serving files from: src 
ts-loader: Using [email protected] and /Users/omelvin/github_projects/kaizen/tsconfig.json 
webpack built 5ccca2fe23cfa5a1a610 in 5073ms 

回答

4

打字稿依赖于定义类型,接口等,为库定义文件。我不熟悉FountainJS,但我猜测它足够聪明,可以在工作区中创建typings.json文件。如果是这样,您只需安装typingsnpm install typings --global),然后通过执行typings install来安装定义。

如果他们不包括typings.json(尽管我无法想象他们不会),请按照其README上的说明搜索并安装依赖关系的定义。

我大致有如下几行添加到package.json,使该分型将被自动安装任何一次运行npm install

"scripts": { "postinstall": "npm run typings", "typings": "typings install", }

如果你不熟悉的打字稿,我建议要通过自己的基础教程让你开始:https://www.typescriptlang.org/docs/tutorial.html

+0

我有点尴尬,但谢谢。我在这之前几天工作过,然后回到它,所以不是100%,但我发誓我做到了。我确实在npm上遇到了一些问题,所以我不得不重新安装,现在再次运行它。 – Vanquish46