Sanity插件sanity-plugin-order-documents构建报错求助
Sanity添加sanity-plugin-order-documents插件时模块解析错误的解决方法
你遇到的问题是@floating-ui/dom包使用了未转译的ES6语法(如对象展开运算符...),而Sanity默认Webpack配置未处理node_modules中的该包,导致构建时解析失败。以下是具体修复步骤:
步骤1:创建自定义Webpack配置文件
在Sanity项目的根目录(sanity文件夹下)新建webpack.config.js,写入以下内容:
module.exports = function (config) { config.module.rules.push({ test: /\.js$/, include: /node_modules\/(@floating-ui\/dom|react-select)/, use: { loader: 'babel-loader', options: { presets: ['@babel/preset-env', '@babel/preset-react'] } } }); return config; };
步骤2:安装必要的Babel依赖
在Sanity项目目录下执行终端命令:
npm install --save-dev babel-loader @babel/preset-env @babel/preset-react
步骤3:验证修复
重新运行sanity start或sanity deploy,构建应该能正常完成。
原因说明
插件依赖的react-select引入了@floating-ui/dom,该包的ES模块版本包含未转译的ES6语法。Sanity默认不会转译node_modules内的包,因此需要手动配置Webpack,指定Babel处理这两个依赖包,确保语法能被正确解析。
内容的提问来源于stack exchange,提问作者Abdellah Slimani
相关产品推荐
相关产品推荐

