从 CRA v5 迁移到 Vite 时,我在使用“vite”时收到“import_fs2.default is null”

问题描述 投票:0回答:1

我正在尝试将团队项目从CRA迁移到Vite,但目前存在很大问题

现在,当我设法启动开发环境或服务环境时,我面临“import_fs2.default is null”,它来自 graphql.macro

从技术上讲,我可以用 codegen 替换它,但考虑到没有太多时间,有解决方法吗?

注意,如果这很重要,我正在使用nodePolyfills,但我仍然收到此错误

控制台开发工具强调了这一点:highlighted line

错误:error in console

Vite配置:

/* eslint-disable import/no-extraneous-dependencies */
import { defineConfig, UserConfigExport } from 'vite';
import react from '@vitejs/plugin-react-swc';
import viteTsconfigPaths from 'vite-tsconfig-paths';
import svgrPlugin from 'vite-plugin-svgr';
import { nodePolyfills } from 'vite-plugin-node-polyfills';

const config = defineConfig({
  plugins: [
    react(),
    viteTsconfigPaths(),
    svgrPlugin(),
    nodePolyfills({
      // Whether to polyfill `node:` protocol imports.
      protocolImports: true,
    }),
  ],
  resolve: {
    alias: {
      './runtimeConfig': './runtimeConfig.browser',
      '~antd': './node_modules/antd',
    },
  },
  base: '',
  build: {
    outDir: 'build',
    manifest: 'asset-manifest.json',
    assetsDir: 'static',
    chunkSizeWarningLimit: 1024,
  },
});

export default config;

我希望 graphql.macro 能够与 vite 一起正常工作

从技术上讲,它的构建没有错误,但启动是一个不同的故事

reactjs create-react-app vite
1个回答
0
投票

找到答案

只需使用 vite loader 进行 graphQL 并将 loader 调用更改为 ES6 导入

© www.soinside.com 2019 - 2024. All rights reserved.