语义UI(和Fomantic UI)安装程序(众所周知?)不支持yarn,因为它具有交互式的后安装脚本。即使"autoInstall": true
中有semantic.json
,在第一次安装时纱线仍会断裂。
使用工作区时,很难将主题语义UI安装在Lerna monorepo中的自己的程序包中。即使将--ignore-scripts
添加到Lerna的package.json
脚本中,它仍会时不时地自行运行标准的yarn install
并在进行更改时被语义UI阻止。
有没有办法解决这个问题?
答案 0 :(得分:0)
一种方法是编辑packages/semantic-ui/package.json
,从"semantic-ui"
中删除dependencies
并添加脚本"install": "node ./install.js"
。然后,仅在环境中检测到纱线的情况下,创建一个生成npm install semantic-ui --no-save
的脚本(为防止无限安装循环;请检查process.env.npm_config_user_agent
)。
这是一种复杂且容易出错的方法,但是,如果存在带有semantic.json
的{{1}},它将自动安装语义UI并运行gulp作业,从而使自定义主题可用于其他软件包,网址为"autoInstall": true
。
答案 1 :(得分:0)
实际上,您可以使用fomantic-ui使autoInstall
与yarn一起工作,我只运行了这些命令,它就起作用了
$ yarn add fomantic-ui --ignore-scripts
$ yarn --cwd node_modules/fomantic-ui run install
semantic.json
- "autoInstall": false,
+ "autoInstall": true,
现在,每次运行yarn install
时,它都会“跳过”安装脚本。
上也存在与此问题有关的整个问题确保您使用的是最新版本的FUI