From 4041a0789064e982ff5e3aa22395fbff80ddc7dd Mon Sep 17 00:00:00 2001 From: money Date: Tue, 5 Dec 2023 11:30:11 +0800 Subject: [PATCH] fix(plugins): import react while using react16 (#11926) * fix(plugins): import react while using react16 * fix(plugins): import react while using react16 --- packages/plugins/src/react-query.ts | 1 + packages/plugins/src/styled-components.ts | 1 + packages/preset-umi/src/features/icons/icons.ts | 3 +++ 3 files changed, 5 insertions(+) diff --git a/packages/plugins/src/react-query.ts b/packages/plugins/src/react-query.ts index ae07f5cb3151..2b6b9afda7f0 100644 --- a/packages/plugins/src/react-query.ts +++ b/packages/plugins/src/react-query.ts @@ -64,6 +64,7 @@ export default (api: IApi) => { path: 'runtime.tsx', content: enableQueryClient ? ` +import React from 'react'; import { defaultContext, QueryClient, QueryClientProvider } from '${pkgPath}'; import { ReactQueryDevtools } from '${devtoolPkgPath}'; ${reactQueryRuntimeCode} diff --git a/packages/plugins/src/styled-components.ts b/packages/plugins/src/styled-components.ts index b123480f2bdc..e379565c660d 100644 --- a/packages/plugins/src/styled-components.ts +++ b/packages/plugins/src/styled-components.ts @@ -104,6 +104,7 @@ export { styled, ThemeProvider, createGlobalStyle, css, keyframes, StyleSheetMan api.writeTmpFile({ path: 'runtime.tsx', content: ` +import React from 'react'; ${hasProvider ? `import { StyleSheetManager } from '${winPath(libPath)}';` : ``} ${styledComponentsRuntimeCode} diff --git a/packages/preset-umi/src/features/icons/icons.ts b/packages/preset-umi/src/features/icons/icons.ts index 35d597cd2f57..10510109a1b1 100644 --- a/packages/preset-umi/src/features/icons/icons.ts +++ b/packages/preset-umi/src/features/icons/icons.ts @@ -120,6 +120,9 @@ export default (api: IApi) => { } } } + if (code.length) { + code.unshift("import React from 'react';"); + } api.writeTmpFile({ path: 'icons.tsx', content: code.join('\n') || EMPTY_ICONS_FILE,