当我尝试在我的React应用程序中运行webpack时,我得到了
对于不同的变量,我得到这个错误58次。 我尝试删除@types目录,我收到以下错误:
如果不将@ types / react反馈回项目,如何解决这个问题,因为那之前导致了58个错误?
我也尝试将所有'SVGProps'更改为@ types / react / index.d.ts内的另一个名称'SVGPropss'并且没有运气
答案 0 :(得分:6)
一种可能性是你有其他依赖关系依赖于旧版@types/react
或yarn / npm已经决定他们应该使用旧版本。
例如:@types/react-dom
取决于@types/react
。当我遇到此问题时,我只是手动更改了@types/react
的版本号并重新运行yarn install
。 Yarn愉快地将@types/react
的新版本安装到我的node_modules/@types/
目录中,但它还将我 使用的版本安装到依赖于@types/react
的所有其他模块上。所以我最终得到了像
node_modules
+-- @types
| +-- react // 16.0.2
| +-- react-dom
| | | +-- node_modules
| | | +-- @types
| | | | +-- react // 15.0.35
您可以快速扫描./node_modules/@types/
目录,看看他们自己是否有node_modules/@types/react
的子目录。如果是这样,这可能是你复制居住地的地方。
我解决这个问题的方法是运行
> yarn outdated
> yarn upgrade
或
> npm outdated
> npm upgrade
如果您实际上不希望升级outdated
输出的所有模块,则只能将要更新的模块作为upgrade
的参数进行更新。
我怀疑你可以简单地运行
yarn upgrade @types/react
并完全解决问题,但我没有测试过。
答案 1 :(得分:3)
您可以使用 Main> shift 3 [] 5
[]
Main> shift 0 [1,2,3,4] 4
[1,2,3,4]
Main> shift 3 [1,2,3,4,3,2,1] 3
[1,2,4,3,2,3,1]
Main> shift 6 [1,2,3,4,5,6,7,8] 7
[1,2,3,4,5,7,8,6]
Main> shift 'k' "skin" 0
"sin"
Main> shift '.' "factor.bit." (-2)
"fact.orbit."
Main> shift '.' "0000.1111.00" (-10)
".00001111.00"
Main> shift "one" ["one", "two", "three"] (-2)
["one","two","three"]
Main> shift "one" ["one", "two", "three"] 1
["two","one","three"]
Main> shift "three" ["one", "two", "three"] 5
["one","two","three"]
查看所有版本的react / react-dom和@ types / react / @ types / react-dom。
对我来说,它看起来像:
yarn list --pattern "react"
您可以使用yarn的resolutions功能来解析同一版本的特定依赖关系。将以下内容添加到package.json:
yarn list v1.3.2
├─ @jupyterlab/apputils@0.15.5
│ ├─ @types/react@16.0.41
│ ├─ react-dom@16.0.0
│ └─ react@16.0.0
├─ @jupyterlab/cells@0.15.4
│ └─ react@16.0.0
├─ @types/react-dom@16.0.3
│ └─ @types/react@16.3.5
├─ @types/react@16.0.34
├─ mdi-react@2.1.19
├─ react-chart-editor@0.11.1
├─ react-color@2.14.0
├─ react-colorscales@0.4.3
├─ react-dom@16.2.0
├─ react-input-autosize@2.2.1
├─ react-plotly.js@1.7.0
├─ react-rangeslider@2.2.0
├─ react-select@1.2.1
├─ react-tabs@2.2.1
├─ react@16.2.0
└─ reactcss@1.2.3
这解决了“后续变量声明必须具有相同类型 “对我来说错误。
答案 2 :(得分:0)
如果不将@ types / react反馈回项目,如何解决这个问题,因为那之前导致了58个错误?
而不是删除@types/react
删除导致冲突的其他定义。
重复文件很可能会被称为react.d.ts
或react/index.d.ts