ã¹ã¿ãŒã¿ãŒãããžã§ã¯ãã®ãã¹ãŠã®äŸåé¢ä¿ãæŽæ°ããåŸã gatsby develop
å®è¡ããåŸããã©ãŠã¶ãŒã³ã³ãœãŒã«ã«æ¬¡ã®ã¡ãã»ãŒãžã衚瀺ãããŸããã
React-Hot-Loader: react-ð¥-dom patch is not detected. React 16.6+ features may not work.
yarn && yarn develop
èŠåã¯ã¹ããŒãããã¹ãã§ã¯ãããŸããã
ã¹ã¿ãŒã¿ãŒãããžã§ã¯ãã§ãèŠåãã¹ããŒãããŸãã
System:
OS: Windows 10
CPU: (4) x64 Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz
Binaries:
Yarn: 1.13.0 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
npm: 6.4.1 - C:\Program Files\nodejs\npm.CMD
npmPackages:
gatsby: ^2.1.10 => 2.1.10
gatsby-plugin-manifest: ^2.0.18 => 2.0.18
gatsby-plugin-offline: ^2.0.24 => 2.0.24
gatsby-plugin-react-helmet: ^3.0.6 => 3.0.6
gatsby-plugin-styled-components: ^3.0.6 => 3.0.6
gatsby-plugin-typescript: ^2.0.8 => 2.0.8
ãã®èŠåã確èªã§ããŸããã ãŸããgatsby-starter-defaultã䜿çšããŠãã®èŠåãåçŸããããšãã§ããŸããã
ããããhttps://github.com/gaearon/react-hot-loader/tree/7089062eac273832102c074a368d5af27e23e0b0#webpack-pluginããããŸãã
react fireïŒfireïŒã¯ãŸã å ¬åŒã§ã¯ãªãã®ã§ã倧ããããšã§ã¯ãããŸããã
Webpack.configã¯ããã«ãããŸãïŒ
https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/utils/webpack.config.js
@wardpeet react-dom
ã@ hot-loader / react-domã«çœ®ãæããŠããã®èŠåãåé€ããŸãã
ãããããŸããããŸãïŒ ðª
@achmadk @wardpeetã©ãã§react-domã眮ãæããŸããã
@ hot-loader / react-domïŒ
ã³ãŒãããŒã¹ã§ã¯ãgatsbyã³ãŒãå
ã®ã©ããã«ããã¯ãã§ãã
ããšãã°ã @ JustFly1984ã§ã¯ã ã³ãŒãããŒã¹ã䜿çšããŠããŸãã package.json
ãã¡ã€ã«ã§ã¯ã react-dom
å
ã«dependencies
ãŸãã 次ã«ã react-dom
ã@hot-loader/react-dom
眮ãæããŸãã
ãã®èŠåãgatsby-starter-defaultã§åçŸããŸãã
ã ããäœããã¹ããïŒ
ãreactfireãããªãªãŒã¹ãããã®ãåŸ
ã¡ãŸããïŒ ãŸãã¯ã react-dom
ã@hot-loader/react-dom
眮ãæããŸããïŒ
ããã¯ãåå¿ç«ããšã¯ãŸã£ããé¢ä¿ããªããçµµæåã¯æ··ä¹±ãæããŸãã
ããŒã«ã«ã§å®è¡ã§ããåé¿çã¯ã @hot-loader/react-dom
ãdevDependency
ãšããŠã€ã³ã¹ããŒã«ãããã®ããã¯ãgatsby-node.js
è¿œå ããããšã§ãã
exports.onCreateWebpackConfig = ({ getConfig, stage }) => {
const config = getConfig()
if (stage.startsWith('develop') && config.resolve) {
config.resolve.alias = {
...config.resolve.alias,
'react-dom': '@hot-loader/react-dom'
}
}
}
åé¿çã¯èŠåãåé€ããŸãã..
ä»ã®ãšããããããªããŒãã¯ãããŸãããïŒ ïŒãã¡ã€ã«ãä¿åãããšãã¢ããªã®ããŒãžãæŽæ°ãããŸãïŒ
ã²ãïŒ
ãã®åé¡ã¯éãã«ãªããŸããã äžæ°å³ãªéãã ð»
å€ãã®åé¡ãçºçããŠãããããçŸåšã30æ¥é䜿çšãããªãã£ãåŸã«åé¡ãã¯ããŒãºããŠããŸãã ããã§ã®æåŸã®æŽæ°ããå°ãªããšã20æ¥ãçµéããŠããŸãã
ãã®åé¡ãèŠéããå ŽåããŸãã¯éãããŸãŸã«ããŠããããå Žåã¯ãããã«è¿ä¿¡ããŠãã ããã ãã®åé¡ãéãããŸãŸã«ããããã«ããå€ããªãããšããã©ãã«ãè¿œå ããããšãã§ããŸãã
ã®ã£ãããŒã³ãã¥ããã£ã«åå ããŠããã ãããããšãããããŸãã ðªð
å€ããªãïŒ
ããŒããããã«è¿œå ããã®ã¯ãæ°ãã人ã ãäœãééã£ãããšããããšããå°è±¡ãäžããå¯èœæ§ãããããã§ãã
æ確ã«ããããã«ãåé¿çãé©çšããããšããäœãæåŸ ããå¿ èŠããããŸããïŒ @misterbridgeãæ°ã¥ããããã«ã
ãã®ä¿®æ£ãã§ããã ãæ©ãååŸãããŠãã ãã
æ°ããPRãäœæããŸããhttps://github.com/gatsbyjs/gatsby/pull/13713ãããããã€ãã®ãªããžããªã§ãã¹ãã§ããã°æ¥œããã§ãããã
ããã¯ïŒ13713ã§ä¿®æ£ãããããã§ã
æåŸã®gatsbyããŒãžã§ã³ã®èŠåãåé€ããã«ã¯ããã®exports.onCreateWebpackConfig
ãããããŸã å¿
èŠã§ããïŒ ãããšããèŠåãç¡èŠããããšã¯ã§ããŸããïŒ
React16.9.0ã®äœ¿çš
åã³æ»ã£ãŠããããã§ã
ããã¯ãæ°ããã¹ã¿ãŒã¿ãŒãããžã§ã¯ãã§ãèŠãããŸãã
ããã±ãŒãžãã¡ã€ã«ã«react-hot-domã«äžèŽããããŒãžã§ã³ãè¿œå ããå¿ èŠããããŸã
"@ hot-loader / react-dom"ïŒ "^ 16.8.6"ã
ãããŠããªãã®webpackèšå®ã§ãããªãã¯è¿œå ããå¿ èŠããããŸã
ãšã€ãªã¢ã¹ïŒ{'react-dom'ïŒ '@ hot-loader / react-dom'}
ããã¯å®éã«ã¯äœãå£ããªãã®ã§ãç§ãçãããã®ã¹ã¿ãã¯ãªãŒããŒãããŒã®è³ªåã«èšèŒãããŠããããã«ãéåžžã¯èŠåãé衚瀺ã«ããã®ãå®å šã§ãïŒ
次ã®è¡ãå€æŽãå ããã®ã«é©åãªå Žæã§ããããšã誰ãã確èªã§ããã°ãç§ã¯PRãæåºããã€ããã§ãã
ç§ã¯Gatsbyã«å°ãæ
£ããŠããŸããããããã¯ããªãç°¡åãªå€æŽã§ããããŠãŒã¶ãŒãã³ã¢react-dom
ããã±ãŒãžãã移è¡ããå¿
èŠããªããšæããŸãã
@TheAadithyanã«ããä¿®æ£ã¯
Gatsby APIã«ç¶ããŠã actions.setWebpackConfig
䜿çšããããšããå§ãããŸãã
exports.onCreateWebpackConfig = ({ stage, actions }) => {
if (stage.startsWith("develop")) {
actions.setWebpackConfig({
resolve: {
alias: {
"react-dom": "@hot-loader/react-dom",
},
},
})
}
}
ããã©ã«ãã®èšå®ãšèªåçã«ããŒãžãããŸãã
@antoinerousseauãš@oolothïŒäžå¹žãªå¯äœçšãšããŠãããããããã¯äœ¿çšããŠããã±ãŒãžããšãã«ã³ã³ãã€ã«ã«å€±æãããžã§ã¯ãåå ãšããŠreact-modal
ã§ããŒã«ã«ãã¡ã€ã«ã·ã¹ãã ããã€ã³ã¹ããŒã«ãããŠããŸãfile:[path to project]
ã æ¬åœã«å¥åŠãªã®ã¯ãAzure DevOpsã¢ãŒãã£ãã¡ã¯ãããã€ã³ã¹ããŒã«ãããšãã«ããŸã£ããåãã³ãŒããæ£åžžã«æ©èœããããšã§ãã
ããããåé€ããŠãåé¡ã¯çºçããŸããã react-modal
ãäŸåé¢ä¿ãšããŠæã€2ã€ã®ç°ãªããããžã§ã¯ãã§ããããã¹ãããŸããããã©ã¡ããåããšã©ãŒã§å€±æããŸãã react-modal
ã¯react-dom
äŸåããŠããŸãããäžèšã®ããããé©çšãããšè§£æ±ºã§ããŸããã
ãªããžããªã®äŸã«ã€ããŠã¯ã httpsïŒ//github.com/collector-bank/collector-portal-frameworkãåç §ããŠ
file:..
ã䜿çšããŠã react-modal
äŸåããããŒã«ã«ããã±ãŒãžãã€ã³ã¹ããŒã«ããŸããnpm run start
å®è¡ããŸãã» npm run start [removed for privacy reasons]@Eriks-MBP
> [email protected] start /Users/[removed for privacy reasons]/Projects/[removed for privacy reasons]/FooProject
> npm run develop
> [email protected] develop /Users/[removed for privacy reasons]/Projects/[removed for privacy reasons]/FooProject
> gatsby develop
success open and validate gatsby-configs - 0.029 s
success load plugins - 0.247 s
success onPreInit - 0.015 s
info One or more of your plugins have changed since the last time you ran Gatsby. As
a precaution, we're deleting your site's cache to ensure there's not any stale
data
success initialize cache - 0.031 s
success copy gatsby files - 0.049 s
success onPreBootstrap - 0.020 s
success source and transform nodes - 0.098 s
success Add explicit types - 0.018 s
success Add inferred types - 0.099 s
success Processing types - 0.075 s
success building schema - 0.250 s
success createPages - 0.014 s
success createPagesStatefully - 0.055 s
success onPreExtractQueries - 0.016 s
success update schema - 0.032 s
success extract queries from components - 0.231 s
success write out requires - 0.027 s
success write out redirect data - 0.013 s
success Build manifest and related icons - 0.104 s
success onPostBootstrap - 0.127 s
â
info bootstrap finished - 3.117 s
â
success run static queries - 0.058 s â 3/3 67.58 queries/second
success run page queries - 0.028 s â 5/5 365.36 queries/second
success start webpack server - 1.300 s â 1/1 7.17 pages/second
ERROR Failed to compile with 2 errors 09:36:39
â
This dependency was not found:
â
* react-dom in /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/node_modules/react-modal/lib/components/Modal.js, /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/node_modules/react-onclickoutside/dist/react-onclickoutside.es.js
â
To install it, you can run: npm install --save react-dom
ERROR
â wdm:
ERROR in /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/node_modules/react-modal/lib/components/Modal.js
Module not found: Error: Can't resolve 'react-dom' in '/Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/node_modules/react-modal/lib/components'
@ /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/node_modules/react-modal/lib/components/Modal.js 16:16-36
@ /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/node_modules/react-modal/lib/index.js
@ /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/dist/components/Modal/index.js
@ /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/dist/components/index.js
@ ./src/components/layout.tsx
@ ./src/pages/page-2.tsx
@ ./.cache/sync-requires.js
@ ./.cache/app.js
@ multi ./node_modules/event-source-polyfill/src/eventsource.js (webpack)-hot-middleware/client.js?path=/__webpack_hmr&reload=true&overlay=false ./.cache/app
ERROR in /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/node_modules/react-onclickoutside/dist/react-onclickoutside.es.js
Module not found: Error: Can't resolve 'react-dom' in '/Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/node_modules/react-onclickoutside/dist'
@ /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/node_modules/react-onclickoutside/dist/react-onclickoutside.es.js 2:0-40 199:15-26
@ /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/node_modules/react-datepicker/dist/react-datepicker.min.js
@ /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/dist/common/components/DatePicker/index.js
@ /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/dist/common/components/index.js
@ /Users/[removed for privacy reasons]/Projects/Private/collector-portal-framework-upstream/dist/components/index.js
@ ./src/components/layout.tsx
@ ./src/pages/page-2.tsx
@ ./.cache/sync-requires.js
@ ./.cache/app.js
@ multi ./node_modules/event-source-polyfill/src/eventsource.js (webpack)-hot-middleware/client.js?path=/__webpack_hmr&reload=true&overlay=false ./.cache/app
info ⹠wdm: Failed to compile.
ããã¯ãåå¿ç«ããšã¯ãŸã£ããé¢ä¿ããªããçµµæåã¯æ··ä¹±ãæããŸãã
ããŒã«ã«ã§å®è¡ã§ããåé¿çã¯ã
@hot-loader/react-dom
ãdevDependency
ãšããŠã€ã³ã¹ããŒã«ãããã®ããã¯ãgatsby-node.js
è¿œå ããããšã§ããexports.onCreateWebpackConfig = ({ getConfig, stage }) => { const config = getConfig() if (stage.startsWith('develop') && config.resolve) { config.resolve.alias = { ...config.resolve.alias, 'react-dom': '@hot-loader/react-dom' } } }
åŸã§åã³ã³ãã€ã«ããå¿ èŠããããŸããããæ©èœããŸããã
@prevolorioãã®ã¹ã¬ãããèªã¿ãŸãããïŒ...
Gatsby APIã«ç¶ããŠã
actions.setWebpackConfig
䜿çšããããšããå§ãããŸããexports.onCreateWebpackConfig = ({ stage, actions }) => { if (stage.startsWith("develop")) { actions.setWebpackConfig({ resolve: { alias: { "react-dom": "@hot-loader/react-dom", }, }, }) } }
ããã©ã«ãã®èšå®ãšèªåçã«ããŒãžãããŸãã
Newbã¯ãã¡ãã ãã®ã³ãŒãã¯ã©ãã«çœ®ããŸããïŒ gatsby-node.jsïŒ
@TriStarGodã¯ããããã¯apiããã¯ããäœãã§ãããå Žæã§ãã ãã®ã³ãŒãã¹ããããã¯gatsby-node.js
æ¿å
¥ããå¿
èŠããããŸã
@TriStarGodãªã³ã¯ããããŒãžã«è¡šç€ºãããŸã...
䜿çšæ³ïŒãããžã§ã¯ãã®ã«ãŒãã«ããgatsby-node.jsãšããååã®ãã¡ã€ã«ããAPIããšã¯ã¹ããŒãããŠããããã®APIã®ãããããå®è£ ããŸãã
ãã®èŠåã¯Windows10ã§ãçºçããŠããŸãããUbuntuLinuxãmacOSã§ã¯çºçããŠããŸããã ãã®èŠåã¯WindowsãŠãŒã¶ãŒã«åºæã®ãã®ãã©ããçåã«æããŸãã
@kimbaudi Windowsã·ã¹ãã ã§ããã®ãšã©ãŒãçºçããŸãããLinuxã®æ¬çªç°å¢ã§åé¡ããªããã©ããããããŸããïŒ
Gatsbyã¹ã¿ãŒã¿ãŒããã±ãŒãžã§ãã®ãœãªã¥ãŒã·ã§ã³ãè©ŠããŸããããæ©èœããŸããã§ããã æè¿äœãå€ãã£ãããšã¯ãããŸããïŒ
ããã¯ç§ãåãçµãã§ãããããžã§ã¯ãã«çªç¶çŸãå§ããŸããããªããããèµ·ãã£ãŠããã®ã§ããïŒ ç§ã¯äœããå£ããŸãããïŒèŠåãç¡èŠã§ããŸããïŒ
+1
ãã®åé¡ã¯ãChromeçµç±ã®Windows 10ãã·ã³ã§ãçºçããŸãïŒè©²åœããå ŽåïŒ
ããã§åã+1ã ãããŠã @hot-loader/react-dom
ã®åé¿çã¯æ©èœããŸããïŒäž¡æ¹ã®ããŒãžã§ã³ãè©ŠããŸããïŒ-devã¯Error: Cannot find module 'react-dom/server'
倱æããŸã
ãŸãããããè·å Žã®Windowsããã¯ã¹ã§ååŸããŠããŸãã åŸã§å人ã®Macbookããã¯ã¹ã§ãã§ãã¯ããŠãå¥ã®çµæãåŸããããã©ããã確èªããŸãã
æŽæ°ãææ°ããŒãžã§ã³ã«åå¿ããã®ã§ãç§ã¯ãããåã³èŠå§ããŠããŸãã
å®è¡äžïŒ yarn add react-dom<strong i="5">@npm</strong>:@hot-loader/react-dom
åé¡ã解決ããŸããã
FromïŒ react-dom-hot-loader edition Rewire-ïŒYarnïŒãã®ä»ã®ã·ã¹ãã
å®è¡äžïŒ
yarn add react-dom<strong i="6">@npm</strong>:@hot-loader/react-dom
åé¡ã解決ããŸããã
FromïŒ react-dom-hot-loader edition Rewire-ïŒYarnïŒãã®ä»ã®ã·ã¹ãã
ãŸãã¯npm add @hot-loader/react-dom@[YOUR_REACT_VERSION]
esãïŒ$ïŒ$ npm add @hot-loader/[email protected]
ãããŠgatsby-node.jsã«è¿œå ããŸãïŒ
exports.onCreateWebpackConfig = ({ getConfig, stage }) => {
const config = getConfig()
if (stage.startsWith('develop') && config.resolve) {
config.resolve.alias = {
...config.resolve.alias,
'react-dom': '@hot-loader/react-dom'
}
}
}
gatsby develop
å®è¡ããŸã
ç§ã®ããã«åé¡ã解決ããŸããã
ããã§ããããã¹ã ãŒãºãªéçºããã»ã¹ã確å®ã«ããããã«ããã¹ãŠã®gatsbyãµã€ãã§è¡ãå¿ èŠã®ããé¢é£æ§ã®ããä¿®æ£ãè¡ããŸãã ããããªããšãããŒã«ã«ãã¹ãéçºç°å¢ã§ããããªããŒããæç¶çã«å€±æããŸãã
ç§ã¯yarn add react-dom<strong i="5">@npm</strong>:@hot-loader/react-dom
ããŸãããlernaã䜿çšããyarnã¯ãŒã¯ã¹ããŒã¹ãããžã§ã¯ãã§ã¯ãä¿®æ£ã§ããªãã£ãåä»ãªåé¡ããããŸãã nohoistãè©ŠããŸããããæåã«æã£ãããã«æ©èœããŠããŸããã
誰ããããã解決ããããã«ïŒ ãã®æ¹æ³ïŒããã±ãŒãžã®ãšã€ãªã¢ã·ã³ã°ïŒã¯ãã®åé¡ãåŒãèµ·ããå¯èœæ§ããããšæããŸããã100ïŒ ç¢ºä¿¡ã¯ãããŸããã
`@ hot-loader / react-dom"ãã€ã³ã¹ããŒã«ããgatsby-node.jsã«webpackæ§æãè¿œå ããããšã¯ãåé¿çãŸãã¯æ°žç¶çãªè§£æ±ºçã§ããïŒæ°žç¶çãªå ŽåããããGatsbyã«çµã¿èŸŒãã¹ãã§ã¯ãããŸãããïŒåé¿çã®å Žåãã©ããªããŸããïŒãããåé€ãããã£ããã«ãªããŸããïŒ
ãŸããAnt Design 4.1.5ããv4.2.0ã«æŽæ°ããåŸãç¹å®ã®ããŒãžã衚瀺ãããªãããšãä»ãå ããŠãããŸãã 圌ãã¯ããã¯ã䜿çšããããã«List.Item
ã³ã³ããŒãã³ãããªãã¡ã¯ã¿ãªã³ã°ããŸããããããŠç§ã¯ã¯ã©ã¹ã³ã³ããŒãã³ããè¿ãããšããŠããæ©èœã³ã³ããŒãã³ãã«ã€ããŠReactãšã©ãŒãåãåããŸããã ããããé©çšãããšããã®åé¡ã¯å®å
šã«è§£æ±ºãããŸããã 話ã®æèšïŒãreact-ð¥-domããããæ€åºãããŸããããšããèŠåã¯æ¬åœã«åé¡ãåŒãèµ·ããå¯èœæ§ããããŸãïŒ
@wardpeet
react-dom
ã@ hot-loader / react-domã«çœ®ãæããŠããã®èŠåãåé€ããŸãã
ãã®ä»äºã«æè¬ããŸã
é£çµ¡ãã£ãïŒ
@wardpeetãææ¡ããããã«ãå
ã«é²ãã§ãããžã§ã¯ãã§æåã§ä¿®æ£ãã
ç§ã¯ãããæè¿ã®å€ãã®ãŠã§ãéçºã®å åã§ãããšèšããªããã°ãªããŸããã ããã€ãã®ããããéå§ããããšãå«ãŸãªãæçœãªè§£æ±ºçã®ãªãã©ã³ãã ãªå€æŽã«ãã£ãŠåŒãèµ·ããããã©ã³ãã ãšã©ãŒãšãããããæ©èœããå Žåã«åããŠè©ŠããŠã¿ãŠããªãæ©èœããã®ãæ©èœããªãã®ããå®éã«ç解ããŠããªãä¿®æ£ãåžæããŸãã ã¯ããç§ã¯ãªããžããªã«ãã£ãšé¢äžããå¿ èŠããããŸããããããç§ã¯ã®ã£ãããŒãã©ã³ãã ãªèŠåã®æãªãã§å®è¡ãããããšããã§ããªãã®ã§ãç§ã¯åœ¹ã«ç«ããªãã§ãããã ç§ã®2ã»ã³ãã
ç§ã¯ãããžã§ã¯ããéå§ãããã³ã«ããã«æ¥ãŸãïŒ
https://github.com/gatsbyjs/gatsby-starter-default
ã ããç§ã¯èªåèªèº«ã®ããã«ããããŠãããŸã§ã¹ã¯ããŒã«ããä»ã®äººã®ããã«ãã®ã¡ã¢ãæžããŠããŸãðïŒHey future meïŒ
ãã®ã³ãã³ããå®è¡ããŸã-ãããããããåç¬ã§å®è¡ããŠãåé¡ã¯è§£æ±ºããŸããïŒ
npm install -D @hot-loader/react-dom
gatsby.node.js
ãå€æŽããŠã以äžãè¿œå ããŸãã
exports.onCreateWebpackConfig = ({ stage, actions }) => {
if (stage.startsWith("develop")) {
actions.setWebpackConfig({
resolve: {
alias: {
"react-dom": "@hot-loader/react-dom",
},
},
})
}
}
ããã§èšåãããŠããä»ã®ã³ãŒããããäžèšã®ã³ãŒãã䜿çšããŠãã ãããçç±ã¯æ¬¡ã®ãšããã§ãã
https://github.com/gatsbyjs/gatsby/issues/11934#issuecomment -538662592
ãããã©ã«ãã®èšå®ãšèªåçã«ããŒãžããããããactions.setWebpackConfigã䜿çšããããšããå§ãããŸããã
GATSBY_HOT_LOADER=fast-refresh
䜿çšããããšãã§ããŸãã @ hot-loaderãéçºã®ããã©ã«ãã«ããPRãåãã§åãå
¥ããŸã
ããã±ãŒãžãã¡ã€ã«ã«react-hot-domã«äžèŽããããŒãžã§ã³ãè¿œå ããå¿ èŠããããŸã
"@ hot-loader / react-dom"ïŒ "^ 16.8.6"ã
ãããŠããªãã®webpackèšå®ã§ãããªãã¯è¿œå ããå¿ èŠããããŸã
ãšã€ãªã¢ã¹ïŒ{'react-dom'ïŒ '@ hot-loader / react-dom'}
ããã¯ã httpsïŒ//github.com/gatsbyjs/gatsby/pull/26927ã§äœãããå¿ èŠãããããçºèŠããã®ã«åœ¹ç«ã¡
@ wardpeet-ç§ã¯ãããå®è¡ããã°ããã§ããããéåžžã«æ確ã§ãã ããããšãããããŸããã
ä»ã®äººã«ã€ããŠã¯ããããŸããããã³ã³ãœãŒã«ã®èŠåã§çºèŠããŸãã...æ©èœã®é害ã«ééããã®ã§ã¯ãªãã
ã€ã³ã¹ããŒã«ã«å¿ èŠãªããŒãžã§ã³ãæå®ããŠã³ã³ãœãŒã«å ã§åé¡ã解決ããæé ãè¿œå ããã®ã¯å®ç§ã§ãð
ç§ã¯ææ¡ããã解決çãè©ŠããŸããïŒ
gatsby-config.js
è¿œå ããŸããïŒexports.onCreateWebpackConfig = ({ stage, actions }) => {
if (stage.startsWith('develop')) {
actions.setWebpackConfig({
resolve: {
alias: {
'react-dom': '@hot-loader/react-dom'
}
}
});
}
};
ããããããã¯ç§ã«ãšã£ãŠã¯ããŸããããŸããã
ãªã«ãææ¡ãïŒ
λgatsbyæ å ±
ã·ã¹ãã ïŒ
OSïŒWindows 10 10.0.16299
CPUïŒïŒ8ïŒx64 IntelïŒRïŒCoreïŒTMïŒi7-6700HQ CPU @ 2.60GHz
ãã€ããªïŒ
ããŒãïŒ14.6.0-CïŒ\ Program Filesnodejsnode.EXE
ã€ãŒã³ïŒ1.22.4-CïŒ\ Program FilesïŒx86ïŒ\ Yarn \ binyarn.CMD
npmïŒ6.14.6-CïŒ\ Program Filesnodejs \ npm.CMD
èšèªïŒ
PythonïŒ3.8.1- / c / Users / ccordero / AppData / Local / Programs / Python / Python38 / python
ãã©ãŠã¶ïŒ
ãšããžïŒã¹ãã«ã¿ã³ïŒ41.16299.1004.0ïŒ
npmPackagesïŒ
ã®ã£ãããŒïŒ^ 2.18.18 => 2.24.33
gatsby-plugin-manifestïŒ^ 2.4.22 => 2.4.22
gatsby-plugin-offlineïŒ^ 3.2.22 => 3.2.22
gatsby-source-graphqlïŒ^ 2.7.0 => 2.7.0
gatsby-theme-codebushiïŒ1.0.0 => 1.0.0
ã¢ããããŒãïŒ
åã®æé ãããŒã«ããã¯ãããšããããã®ãœãªã¥ãŒã·ã§ã³ã«ãã£ãŠæçµçã«èŠåãåé€ãããŸããã
å®è¡äžïŒ
yarn add react-dom<strong i="37">@npm</strong>:@hot-loader/react-dom
åé¡ã解決ããŸããã
FromïŒ react-dom-hot-loader edition Rewire-ïŒYarnïŒãã®ä»ã®ã·ã¹ãã
ã¹ããã1
ãã®ã³ãã³ããå®è¡ããŸã-ãããããããåç¬ã§å®è¡ããŠãåé¡ã¯è§£æ±ºããŸããïŒ
npm install -D @hot-loader/react-dom
ã¹ããã2
gatsby.node.js
ãå€æŽããŠã以äžãè¿œå ããŸããexports.onCreateWebpackConfig = ({ stage, actions }) => { if (stage.startsWith("develop")) { actions.setWebpackConfig({ resolve: { alias: { "react-dom": "@hot-loader/react-dom", }, }, }) } }
ããã§èšåãããŠããä»ã®ã³ãŒããããäžèšã®ã³ãŒãã䜿çšããŠãã ãããçç±ã¯æ¬¡ã®ãšããã§ãã
ïŒ11934ïŒã³ã¡ã³ãïŒãããã©ã«ãã®èšå®ãšèªåçã«ããŒãžããããããactions.setWebpackConfigã䜿çšããããšããå§ãããŸããã
ã€ã³ã¹ããŒã«ã«å€±æããŸãããçŸåšã®reactããŒãžã§ã³ãè¿œå ããå¿ èŠããããŸãã
@zaktwistããã®æçš¿ã
npm add @hot-loader/react-dom@[YOUR_REACT_VERSION]
ããšãã°npm add @hot-loader/[email protected]
æãåèã«ãªãã³ã¡ã³ã
ããã¯ãåå¿ç«ããšã¯ãŸã£ããé¢ä¿ããªããçµµæåã¯æ··ä¹±ãæããŸãã
ããŒã«ã«ã§å®è¡ã§ããåé¿çã¯ã
@hot-loader/react-dom
ãdevDependency
ãšããŠã€ã³ã¹ããŒã«ãããã®ããã¯ãgatsby-node.js
è¿œå ããããšã§ãã