storybook react-docgen-typescript-plugin canary包的名称长度问题

zd287kbt  于 3个月前  发布在  React
关注(0)|答案(4)|浏览(37)

描述问题

在 canary 版本的 storybook/code/presets/react-webpack/package.json 文件中,第81行的包名过长,导致安装时出现问题。

重现步骤

  1. 打开 storybook/code/presets/react-webpack/package.json 文件。
  2. 定位到第81行,查看 "@storybook/react-docgen-typescript-plugin" 的版本号。
  3. 尝试重新安装该依赖包。

系统信息

操作系统:Linux 5.15 Linux Mint 20.3 (Una)
CPU:(12) x64 AMD Ryzen 5 5600H with Radeon Graphics
二进制文件:
Node: 16.15.1 - ~/n/bin/node
Yarn: 1.22.19 - ~/n/bin/yarn
npm: 8.11.0 - ~/n/bin/npm
浏览器:
Chrome: 104.0.5112.79
Firefox: 101.0.1
npmPackages:
@storybook/addon-a11y: 6.4.9 => 6.4.9
@storybook/addon-actions: 6.4.9 => 6.4.9
@storybook/addon-controls: 6.4.9 => 6.4.9
@storybook/addon-docs: 6.4.9 => 6.4.9
@storybook/addon-essentials: 6.4.9 => 6.4.9
@storybook/addon-knobs: 6.3.1 => 6.3.1
@storybook/addon-storysource: 6.4.9 => 6.4.9
@storybook/addons: 6.4.9 => 6.4.9
@storybook/preset-typescript: 3.0.0 => 3.0.0
@storybook/react: ^6.5.10 => 6.5.10

n3ipq98p

n3ipq98p1#

是否有解决此问题的方法?我读到我可以添加一个指向根目录的符号链接,但这只能删除238个字符(!)长的路径中的约20个字符。

ztyzrc3y

ztyzrc3y2#

这个问题非常烦人,似乎与加密分区有关。或者至少这是在这里观察到的:#18441
Linux系统通常只加密主文件夹,而保留根级别未加密。因此,将yarn缓存文件夹指向根级别可能是一种解决方法。这对我有效;然而,如果你的根级别被加密,它可能不起作用:

# Create a folder at the root level
sudo mkdir /yarn
# Change the folder ownership to the current user
sudo chown $USER:$USER /yarn
# Change yarn cache folder, note that we don't need/want to use 'sudo' here since the current user owns that folder
yarn config set cache-folder /yarn

@birgersp ,我不确定创建一个指向未加密文件夹的符号链接是否会起作用。如果是的话;那么,那比我刚刚做的更好。

kmynzznz

kmynzznz3#

现在不再是"yarn config set cache-folder",而是"yarn config set cacheFolder"。我认为他们出于某种原因决定将其更改为驼峰式命名。但是,这不是主要问题,即使我这样做了,问题也只是在一个应用程序中得到解决。该怎么办?

t1rydlwq

t1rydlwq4#

感谢指出较新版本的yarn使用cacheFolder
我不太熟悉Javascript/Yarn,但我注意到yarn(v2)有选项可以设置全局缓存,参见:共享缓存。如果你在根未加密级别设置一个全局共享缓存,这可能对你有用。
最终,这是一个权宜之计,等待明确的解决方案。

相关问题