【发布时间】:2023-01-19 10:10:36
【问题描述】:
我正在为我的 Gatsby 项目使用 Yarn 工作区。我创建了一个名为“milan-site-theme”的 Gatsby 主题,它位于根目录中。
我还创建了 4 个使用“milan-site-theme”作为依赖项的站点。这 4 个站点位于 packages 目录中。
我知道每当我对“milan-site-theme”进行更改时,这都会影响所有网站。 Gatsby 云检测到变化并同时重建所有站点,这是有道理的,也是我所期望的。
但是,当我仅对包目录中的其中一个站点进行更改时,Gatsby 云也会重建所有其他站点。这是正确的行为吗?这对我来说没有意义。 现在我只有 4 个网站,但我知道我很快就会添加更多。 我错过了什么吗? Here's the setup
这是主要的 package.json
{
"name": "milan-gatsby-yarn",
"private": true,
"version": "1.0.0",
"license": "0BSD",
"scripts": {
"build": "yarn workspace albany build"
},
"workspaces": [
"milan-site-theme",
"packages/nebraska/*",
"packages/newyork/*",
"packages/texas/*",
"packages/wisconsin/*"
],
"packageManager": "yarn@3.2.0",
"dependencies": {
"firebase": "^9.8.4",
"gatsby-plugin-gatsby-cloud": "^4.22.0",
"gatsby-plugin-page-creator": "^4.18.0"
}
}
这是 package.json 网站之一(例如休斯顿网站)
{
"name": "houston",
"version": "1.0.0",
"author": "my_email_goes_here",
"license": "MIT",
"scripts": {
"develop": "gatsby develop",
"build": "gatsby build",
"clean": "gatsby clean"
},
"dependencies": {
"gatsby": "^4.18.0",
"milan-site-theme": "*",
"react": "^18.2.0",
"react-dom": "^18.2.0"
}
}
注意:其余站点 package.json 除了 name prop 外看起来完全相同
最后,这是 milan-site-theme package.json
{
"name": "milan-site-theme",
"version": "1.0.0",
"main": "index.js",
"author": "my_email_goes_here",
"license": "MIT",
"peerDependencies": {
"gatsby": "*",
"node-fetch": "*",
"react": "*",
"react-dom": "*"
},
"dependencies": {
"@loadable/component": "^5.15.2",
"@u-wave/react-vimeo": "^0.9.8",
"axios": "^0.27.2",
"bootstrap": "^5.1.3",
"firebase": "^9.8.4",
"formik": "^2.2.9",
"gatsby-plugin-breakpoints": "^1.3.7",
"gatsby-plugin-image": "^2.18.0",
"gatsby-plugin-manifest": "^4.20.0",
"gatsby-plugin-page-creator": "^4.18.0",
"gatsby-plugin-sharp": "^4.18.0",
"gatsby-plugin-sitemap": "^5.20.0",
"gatsby-plugin-smoothscroll": "^1.2.0",
"gatsby-source-filesystem": "^4.18.0",
"gatsby-transformer-json": "^4.20.0",
"gatsby-transformer-sharp": "^4.18.0",
"gbimage-bridge": "^0.2.1",
"qs": "^6.10.5",
"react-bootstrap": "^2.4.0",
"react-countup": "^6.3.0",
"react-datepicker": "^4.8.0",
"react-detect-offline": "^2.4.5",
"react-helmet": "^6.1.0",
"react-icons": "^4.3.1",
"react-input-mask": "^2.0.4",
"react-slick": "^0.29.0",
"react-split": "^2.0.14",
"react-twitter-embed": "^4.0.4",
"react-twitter-widgets": "^1.11.0",
"react-visibility-sensor": "^5.1.1",
"slick-carousel": "^1.8.1",
"to-words": "^3.2.0",
"yup": "^0.32.11"
}
}
【问题讨论】:
标签: yarn-workspaces yarn-v2 gatsby-cloud gatsby-theme