sveltekit - 对于 sveltekit,如何从 rollup/vite 切换到 webpack?

节点 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;

回答1

你不能切换它。 SvelteKit 高度依赖 Vite,以至于它甚至有可能在某个时候作为 Vite 插件发布。

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

相似文章

twilio - DevTools 无法加载源 map

我知道Chrome开发工具中有很多关于这些警告的帖子。对于所有这些,解决方案是关闭通知“启用javascript源maps”和“启用CSS源maps”。我想知道的是如何解决这个问题,以及导致这些警告的...