如何从 rollup/vite 切换到 sveltekit 的 webpack?

How can I switch from rollup/vite to webpack for sveltekit?

节点 polyfill 在 rollup/vite 上对我们不起作用。我们需要切换到 webpack。

有没有关于如何将 sveltekit 与 webpack 一起使用的官方文档?

这是我们的 svelte.config.js 文件:

import adapter from '@sveltejs/adapter-static';
import preprocess from 'svelte-preprocess';
import path from 'path';
// import { NodeGlobalsPolyfillPlugin } from '@esbuild-plugins/node-globals-polyfill';
import dotenv from 'dotenv-flow';

dotenv.config();
const config = {
    preprocess: preprocess(),
    kit: {
        adapter: adapter({
            // default options are shown
            pages: 'build',
            assets: 'build',
            fallback: 'index.html',
            precompress: false
        }),
        vite: {
            optimizeDeps: {
                esbuildOptions: {
                    // Node.js global to browser globalThis
                    define: {
                        global: 'globalThis'
                    }
                    // Enable esbuild polyfill plugins
                    // plugins: [
                    //  NodeGlobalsPolyfillPlugin({
                    //      buffer: true,
                    //      global: true,
                    //      process: true,
                    //      url: true,
                    //      assert: true,
                    //      crypto: true,
                    //      http: true,
                    //      https: true,
                    //      os: true,
                    //      stream: true
                    //  })
                    // ]
                }
            },
            resolve: {
                alias: {
                    $components: path.resolve('./src/components'),
                    $stores: path.resolve('./src/stores'),
                    $api: path.resolve('./src/api'),
                    $node: path.resolve('./node_modules')
                }
            },
            build: {
                minify: false
            }
        }
    }
};

export default config;

你不能切换它。 SvelteKit 高度依赖 Vite——如此之多以至于它甚至有可能在某个时候.

作为 Vite 插件发布

如果你真的用尽了 Vite 的选择并决定你必须使用 Webpack,一个选择是将所有需要它的代码隔离到一个单独的包中,然后你可以预先捆绑 Webpack 并从 SvelteKit 应用程序中使用。