我正在安装ts-loader来使用 webpack。
有人知道如何选择要使用的打字稿版本吗?
不管我做什么,我总是收到一条消息说
ts-loader: Using typescript@1.8.10 and /app/tsconfig.json
我打算使用 typescript@2 但我不知道如何告诉 ts-loader 使用正确的版本...
谢谢
我正在安装ts-loader来使用 webpack。
有人知道如何选择要使用的打字稿版本吗?
不管我做什么,我总是收到一条消息说
ts-loader: Using typescript@1.8.10 and /app/tsconfig.json
我打算使用 typescript@2 但我不知道如何告诉 ts-loader 使用正确的版本...
谢谢
不幸的是,对于那些使用 react-scripts-ts 或任何其他需要旧版本打字稿的依赖项的人来说,你的答案是不够的。我已经添加到我的包依赖 typescript ^2.6.2,但 ts-loader 仍然显示 typescript 2.5.3,因为“react-scripts-ts”有一个依赖“typescript”:“~2.5.3”,所以不知何故那个依赖优先。
我发现的实际解决方案是创建npm-shrinkwrap.json
文件,在其中我将 react-scripts-ts 的子依赖项覆盖为正确的依赖项,如下所示:
{
"dependencies":
{
"react-scripts-ts":
{
"dependencies":{
"typescript": { "version": "2.6.2" }
}
}
}
}
创建此文件后,我删除文件夹node_modules
并执行npm install
如果您不确定依赖关系树中的哪个包取决于某个包的特定版本,您可以在package-lock.json
文件中找到它
好的,找到了
事实证明 typescript 是由 npm 作为依赖项安装的。默认情况下它是 1.8
将 typescript@2 添加到 package.json 正确设置 typescript 版本