那么,到底是什么问题呢?我有两个 React 和 ReactDOM 实例为所提供的applicationB. 我在诊断问题空间时被误导了,因此下面提出的问题/呼吁有点全面。应该拿走什么,希望它可以帮助处于这个位置的其他人:
该错误Uncaught TypeError: Cannot read properties of null (reading 'useEffect')与将两个 React 副本加载到applicationB. 但为什么有两份呢?
applicationB是 Remix 应用程序。packageA是一个在其构建链中使用 esbuild 的 React 组件。Remix通过调查,我发现对以下方面的支持存在差异esbuild:
esbuild 添加了对 React 17 JSX Transform 的支持。Remix可能不知道此更新,并通过使用React 导入的垫片esbuild来解决对 JSX 自动运行时缺乏支持的问题。这导致了问题的提出:
Remix识别出垫片的故障并在 v1.7.0 版本中包含了解决方案。在applicationB …
我正在尝试扩展esbuildCSS 支持以包括CSS Modules和Sass/Scss。因此,我一直在使用定制插件——利用 esbuild 插件 API。首先,我尝试过:
esbuild-sass-plugin:顾名思义,这个插件负责.scss解释/转译。然而,它未能适应CSS Modules(尽管宣传其可扩展性)。为了适应缺少的支持CSS Modules,我添加了另一个esbuild plugin:
esbuild-css-modules-plugin:该插件也未能提供对CSS Modules.Node:14。esbuild:^0.11.11。esbuild-css-modules-plugin:^2.3.2。esbuild-sass-plugin:^2.2.6。sass:^1.53.0。typescript:^4.2.3。CSS Module支持?package.json - 相关构建脚本
"build:dev": "node build.js esbuild-browser:dev"
Run Code Online (Sandbox Code Playgroud)
build.js(esbuild 的入口点)
const sassPlugin = require("esbuild-sass-plugin").default;
const cssModulesPlugin = require("esbuild-css-modules-plugin");
let options = {
bundle: true,
minify: true,
minifyWhitespace: true,
sourcemap: …Run Code Online (Sandbox Code Playgroud)