next.js SWC plugins not working / Any plugin I compile breaks下一个js

busg9geu  于 2023-05-22  发布在  其他
关注(0)|答案(1)|浏览(137)

bounty已结束。回答此问题可获得+300声望奖励。赏金宽限期10小时后结束。Roman希望引起更多关注这个问题。

Next js框架使用SWC编译器而不是Babel。
我需要为SWC写一个插件。一切都很好,但发生了一些事情。现在,我在计算机上编译的任何插件都不能在Next js中工作。
我在SWC github上写过很多次。SWC的开发人员说了一些难以理解的话,但似乎除了我之外,所有的东西都对每个人都有效。
我会在github上留下所有关于这方面讨论的链接。这里既有错误的文本,也有所有的数据。
我不写代码。我正在安装来自SWC的入门示例
另外,我注意到我已经尝试了很多版本的Rust,swc_core,swc_cli。每次Next js中断。我也试过在windows虚拟机和ubuntu上这样做。我真的需要帮助,帮助我理解为什么这是行不通的,即使我降级swc版本
https://github.com/swc-project/swc/issues/7381
https://github.com/swc-project/swc/issues/7386
https://github.com/swc-project/swc/discussions/7361

要重现一个错误的最小示例,您需要执行以下步骤

1.下载并安装rust https://www.rust-lang.org/learn/get-started

  1. rustup默认每晚-2023-03-20
    1.货物安装swc_cli
  2. swc插件new --target-type wasm32-wasi my-first-plugin
  3. cd my-first-plugin
  4. rustup target add wasm32-wasi
    1.货物装卸
    安装下一个js,将插件放在根文件夹中,并将其包含在配置文件(next.config.js)中:
const nextConfig = {
      experimental: {
        swcPlugins: [
            [require.resolve("./my_first_plugin.wasm"),{}]
        ],
  },
}

module.exports = nextConfig

辅助链接:

https://swc.rs/docs/plugin/ecmascript/getting-started
https://swc.rs/docs/plugin/publishing
https://nextjs.org/docs/pages/api-reference/create-next-app

zzwlnbp8

zzwlnbp81#

通过更新SWC和Next js解决了这个问题。
swc_cli - v0.91.42下一个js - 13.4.3-canary.2

相关问题