fix: CJS 产物改 .cjs 扩展名并提升 default 导出 — 修复 require() 兼容性
- 包声明 type:module 时 .js 产物被 Node 按 ESM 解析:Node 16/18 下 require 报 ERR_REQUIRE_ESM,Node 20+ 拿到 namespace 对象(success/version 等属性 undefined) - dist/metona-toast.cjs.js → .cjs,dist/react.cjs.js → .cjs - 主包 CJS footer 将 default 提升为 module.exports:require() 直接返回 MeToast(兼容 .default / .MeToast / .Met / .Toast / .VERSION 所有用法) - 版本 0.5.1(0.5.0 已发布带问题产物) - 真实消费者验证:CJS/ESM/React 子包四路加载全部正常
This commit is contained in:
+5
-3
@@ -59,14 +59,16 @@ export default [
|
||||
},
|
||||
plugins: basePlugins,
|
||||
},
|
||||
// CommonJS
|
||||
// CommonJS(.cjs 扩展名:包声明 type:module,.js 会被 Node 按 ESM 解析)
|
||||
// footer 将 default 提升为 module.exports,保证 require() 直接返回 MeToast
|
||||
{
|
||||
input: 'src/index.ts',
|
||||
output: {
|
||||
file: 'dist/metona-toast.cjs.js',
|
||||
file: 'dist/metona-toast.cjs',
|
||||
format: 'cjs',
|
||||
exports: 'named',
|
||||
sourcemap: true,
|
||||
footer: 'module.exports = Object.assign(exports.default, exports);',
|
||||
},
|
||||
plugins: basePlugins,
|
||||
},
|
||||
@@ -115,7 +117,7 @@ export default [
|
||||
sourcemap: true,
|
||||
},
|
||||
{
|
||||
file: 'dist/react.cjs.js',
|
||||
file: 'dist/react.cjs',
|
||||
format: 'cjs',
|
||||
exports: 'named',
|
||||
sourcemap: true,
|
||||
|
||||
Reference in New Issue
Block a user