我已经使用https://github.com/FountainJS/generator-fountain-webapp建立了一个新的项目,使用React & Typescript。我很习惯JS使用节点进行一个正在进行的项目,但不熟悉TS,问题似乎在哪里。
我已在以下环境中运行了发生器: typescript 、React、网络包w/ NPM、吞咽。
当我运行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 typescript@2.0.8 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 typescript@2.0.8 and /Users/omelvin/github_projects/kaizen/tsconfig.json
webpack built 5ccca2fe23cfa5a1a610 in 5073ms
4条答案
按热度按时间8wtpewkr1#
从
tsconfig.json
中删除“module”和“target”字段对我很有效。更新:删除
target
是可以的,但是删除module
不是一个选项,因为编译器依赖于它。你也可以通过将"moduleResolution": "node"
添加到tsconfig
来解决这个问题。w3nuxt5m2#
TypeScript依赖于定义库的类型、接口等的定义文件。我不熟悉FountainJS,但我猜它足够聪明,可以在您的工作区中创建一个
typings.json
文件。如果是这样,您所需要做的就是安装typings(npm install typings --global
),然后使用它通过执行typings install
来安装定义。如果他们没有包含
typings.json
(尽管我无法想象他们不会),请按照他们的README
上的说明搜索并安装依赖项的定义。我通常会将以下几行添加到
package.json
中,以便在您运行npm install
时自动安装这些类型"scripts": { "postinstall": "npm run typings", "typings": "typings install", }
如果您不熟悉TypeScript,我建议您阅读他们的基本教程以开始使用:https://www.typescriptlang.org/docs/tutorial.html中的一个。
d6kp6zgx3#
您需要确保
tsconfig.json
文件中存在以下内容请注意这一行
确保在文件夹
src
中创建文件decs.d.ts
所以文件
src/decs.d.ts
的内容应该是其中
jwt-decode
是您需要导入的任何ts模块的名称这应该可以解决找不到模块错误
rqqzpn5f4#
我的解决方法是使用tsconfig-paths。
请参阅https://github.com/TypeStrong/ts-node/issues/422