接收有关即将发布的Intlayer的通知

    使用 bun 时出现模块未找到错误

    问题描述

    使用 bun 时,您可能会遇到如下错误:

    Cannot find package 'intlayer' from '/workspace/packages/@intlayer/config/dist/cjs/utils/ESMxCJSHelpers.cjs' undefined

    原因

    Intlayer 内部使用了 require。而 bun 将 require 函数的作用域限制为只解析 @intlayer/config 包的依赖,而不是整个项目。

    解决方案

    在配置中提供 require 函数

    const config: IntlayerConfig = {  build: {    require, // 在构建配置中提供 require 函数  },};export default config;
    next.config.ts
    import { withIntlayer } from "next-intlayer/server";const configuration = withIntlayer({  require, // 使用 withIntlayer 时传入 require 函数});export default configuration;