Reactjs NPM包包含与其他包冲突的节点_模块
我正在尝试使的最新版本与的最新版本一起工作 全球npm包:Reactjs NPM包包含与其他包冲突的节点_模块,reactjs,typescript,npm,office-ui-fabric,azure-devops-extensions,Reactjs,Typescript,Npm,Office Ui Fabric,Azure Devops Extensions,我正在尝试使的最新版本与的最新版本一起工作 全球npm包: +-- typescript@2.9.2 +-- webpack@4.12.0 { "compilerOptions": { "module": "amd", "moduleResolution": "node", "target": "es6", "lib": ["es5", "es6", "dom"], "jsx": "react",
+-- typescript@2.9.2
+-- webpack@4.12.0
{
"compilerOptions": {
"module": "amd",
"moduleResolution": "node",
"target": "es6",
"lib": ["es5", "es6", "dom"],
"jsx": "react",
"rootDir": "src/",
"outDir": "dist/",
"baseUrl": "./",
"types": [ "react", "react-dom" ]
}
}
package.json(仅限依赖项):
tsconfig.json:
+-- typescript@2.9.2
+-- webpack@4.12.0
{
"compilerOptions": {
"module": "amd",
"moduleResolution": "node",
"target": "es6",
"lib": ["es5", "es6", "dom"],
"jsx": "react",
"rootDir": "src/",
"outDir": "dist/",
"baseUrl": "./",
"types": [ "react", "react-dom" ]
}
}
当我运行tsc-p.
时,我得到一个错误,它无法找到所需的模块:
错误TS2307:找不到模块“VSS/控制/导航”
如果我将“vss web extension sdk”
添加到我的tsconfig.json类型中,模块将正确解析,但编译失败:
node_modules/vss web extension sdk/node_modules/@types/react/index.d.ts:3668:13
-错误TS2717:后续属性声明必须具有相同的类型。属性“div”的类型必须为
'DetailedHTMLProps,HtmlLevel>',
但这里有“DetailedHTMLProps”类型,
HtmlLevel>”
在我看来,它之所以失败,可能是因为vss web extension sdk中节点_模块中的@types/react与节点_模块中的@types/react冲突
@类型/react://react 16.7的类型定义
vss web扩展sdk/node_modules/@types/react://react 15.6的类型定义
我试图用多种方式修改tsconfig.json,但都没有用,这不是我的专业领域。如何使这些软件包能够很好地相互配合?事实上,看起来office ui fabric react
版本6.103.0
需要react 16,而vss web extension sdk
版本5.141.0
需要react 15。您可以使用与react 15兼容的较旧版本的office ui fabric react
,例如5.131.1
,然后确保在包.json
中指定15.x.x
版本的@types/react
。我不知道这是否是最好的解决方案。我经常遇到类似的问题,它们目前是我生存的祸根。如果我知道使用vss web extension sdk和TypeScript会导致这个版本的地狱,我会选择一条不同的职业道路。我不想把我的大部分时间花在筛选变更日志、依赖项和源代码上,试图找出哪个版本的X垃圾软件与哪个版本的Y垃圾软件兼容。