前提・実現したいこと
npx create-react-app --template-typescriptで作成した物に
npmでライブラリを追加するとエラーが出ます。
修正するにはどうすればよいでしょうか?
発生している問題・エラーメッセージ
モジュール 'react' の宣言ファイルが見つかりませんでした。'省略/node_modules/react/index.js' は暗黙的に 'any' 型になります。'ts(7016)' モジュール 'react/jsx-runtime' の宣言ファイルが見つかりませんでした。'省略/node_modules/react/jsx-runtime.js' は暗黙的に 'any' 型になります。'ts(7016)'
該当のソースコード
typescript
1import React from 'react'; 2import logo from './logo.svg'; 3 4import './App.css'; 5 6function App() { 7 return ( 8 <div className="App"> 9 <header className="App-header"> 10 <img src={logo} className="App-logo" alt="logo" /> 11 <p> 12 Edit <code>src/App.tsx</code> and save to reload. 13 </p> 14 <a 15 className="App-link" 16 href="https://reactjs.org" 17 target="_blank" 18 rel="noopener noreferrer" 19 > 20 Learn React 21 </a> 22 </header> 23 </div> 24 ); 25} 26 27export default App; 28
typescript
1{ 2 "compilerOptions": { 3 "target": "es5", 4 "lib": [ 5 "dom", 6 "dom.iterable", 7 "esnext" 8 ], 9 "allowJs": true, 10 "skipLibCheck": true, 11 "esModuleInterop": true, 12 "allowSyntheticDefaultImports": true, 13 "strict": true, 14 "forceConsistentCasingInFileNames": true, 15 "noFallthroughCasesInSwitch": true, 16 "module": "esnext", 17 "moduleResolution": "node", 18 "resolveJsonModule": true, 19 "isolatedModules": true, 20 "noEmit": true, 21 "jsx": "react-jsx" 22 }, 23 "include": [ 24 "./src/**/*" 25 ] 26}
試したこと
tsconfigを調べたりimport * as の形式にしてみましたが、何が原因かわからず解決しませんでした。
補足情報(FW/ツールのバージョンなど)
"name": "",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^5.11.4",
"@testing-library/react": "^11.1.0",
"@testing-library/user-event": "^12.1.10",
"@types/jest": "^26.0.15",
"@types/node": "^12.0.0",
"@types/react": "^17.0.0",
"@types/react-dom": "^17.0.0",
"@types/react-router-dom": "^5.3.2",
"axios": "^0.24.0",
"react": "^17.0.2",
"react-dom": "^17.0.2",
"react-router-dom": "^6.0.2",
"react-scripts": "4.0.3",
"typescript": "^4.1.2",
"web-vitals": "^1.0.1"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。