簡體   English   中英

如果安裝了@ types / react-router,是否需要安裝react-router?

[英]Need I install react-router if I installed @types/react-router?

我通過create-react-app啟動了一個React項目

create-react-app my-app --scripts-version=react-scripts-ts

我得到了以下package.json

{
  "name": "my-app",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "react": "^16.4.1",
    "react-dom": "^16.4.1",
    "react-scripts-ts": "2.16.0"
  },
  "scripts": {
    "start": "react-scripts-ts start",
    "build": "react-scripts-ts build",
    "test": "react-scripts-ts test --env=jsdom",
    "eject": "react-scripts-ts eject"
  },
  "devDependencies": {
    "@types/jest": "^23.1.0",
    "@types/node": "^10.3.3",
    "@types/react": "^16.3.18",
    "@types/react-dom": "^16.0.6",
    "typescript": "^2.9.2"
  }
}

我了解,構建生產捆綁包不需要devDependencies中的軟件包,因此我們分別具有依賴項和devDependencies。 但是,如果我想添加一個新包,例如react-router,是否應該像下面這樣分別做以下兩個?

npm install --save react-router
npm install --save-dev @types/react-router

還是我應該做

npm install --save @types/react-router

如果可以,那么兩種方法有什么區別?

npm install --save react-router安裝實際模塊的同時,
npm install --save-dev @types/react-router僅安裝打字稿的類型信息。 類型信息沒有其自身的功能,因此您需要同時安裝兩者。
類型信息被安裝為dev依賴項,因為在將打字稿轉換為JavaScript的構建過程之后,不需要該信息。

這個問題的答案是肯定的。

安裝@types/react-router ,你只得到打字稿類型定義react-router ,而不是react-router的功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM