You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Next.js+Storybook构建时Babel的TSSatisfiesExpression错误?

解决Next.js + Storybook构建时Babel报错"TSSatisfiesExpression but it's not a valid type"

可行解决方案:

  • 检查Babel TypeScript插件版本
    TSSatisfiesExpression是TypeScript 4.9+新增语法对应的AST节点,@babel/preset-typescript从7.21.0版本开始支持该节点。确保依赖版本达标,执行以下命令更新:

    npm update @babel/preset-typescript @babel/core
    # yarn用户执行这条
    yarn upgrade @babel/preset-typescript @babel/core
    
  • 统一Storybook与Next.js的Babel配置
    让Storybook复用Next.js的Babel配置,避免版本或规则不一致引发问题。在.storybook/main.js中修改配置:

    module.exports = {
      babel: async (options) => {
        options.presets.push(require.resolve('next/babel'));
        return options;
      },
      // 其他Storybook配置项...
    };
    
  • 清理缓存后重新构建
    缓存可能残留旧版本的AST定义,执行以下命令清理后重新构建:

    rm -rf .next node_modules/.cache storybook-static
    # 执行对应构建命令,例如
    npm run build
    npm run build-storybook
    
  • 排查自定义Babel插件冲突
    如果项目使用了自定义或第三方Babel插件,检查这些插件是否支持TSSatisfiesExpression节点。存在不兼容插件时,暂时禁用或更新到最新兼容版本。

错误日志示例:

[BABEL] You gave us a visitor for the node type TSSatisfiesExpression but it's not a valid type

内容的提问来源于stack exchange,提问作者Luan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 07:45:34