有人使用 Vite 捆绑他们的 MUI 应用程序吗?我对来自 Vite/Rollup 的供应商块(1.1MB)有多大感到惊讶。我提出了以下配置,它将 MUI 包分成它自己的块:
import { defineConfig } from "vite";
import reactRefresh from "@vitejs/plugin-react-refresh";
import { dependencies } from "./package.json";
// whenever you get the error: (!) Some chunks are larger than 500kb after minification
// find the biggest lib in your vendors chunk and add it to bigLibs
const bigLibs = [
{ regExp: /^@material-ui*/, chunkName: "@material-ui" },
{ regExp: /^@aws-amplify*/, chunkName: "@aws-amplify" },
];
function getManualChunks(deps: Record<string, string>) {
return Object.keys(deps).reduce(
(prev, cur) …Run Code Online (Sandbox Code Playgroud) I\xe2\x80\x99m 构建要在 NPM 上发布的 TypeScript 包。我\xe2\x80\x99将在未来可能使用Vite的Web开发项目中使用这个包。当我用这个模块构建未来的网站时,它\xe2\x80\x99s是否已经捆绑有关系吗?无论NPM上的代码是否被捆绑(如在lib.esm.js文件中),Won\xe2\x80\x99t Rollup(Vite用于构建网站)都会捆绑代码吗?为什么不直接使用 TSC(TypeScript 编译器)将 TS 编译为 NPM 的 JS,然后让使用项目(无论是 Rollup、Webpack 还是 Parcel)将其捆绑起来以针对浏览器进行优化?
\n我错过了什么其他 NPM 作者知道的事情?
\n请注意,我\xe2\x80\x99m将此包严格编写为ESM模块(类型:模块),因此我\xe2\x80\x99m不担心CJS。
\n如何使用 AJV 为 JSON 类型定义 (JTD) 指定最大或最小数量?
我在文档中没有看到如何指定。
每次我使用 VS Code 的 Remote - Containers 扩展启动容器进行开发时,容器都必须重新下载 vs-code-server。有没有什么方法可以在 Dockerfile 中轻松安装服务器,这样就不必每次都重新安装?
rollup ×2
vite ×2
ajv ×1
javascript ×1
json ×1
material-ui ×1
node.js ×1
npm ×1
reactjs ×1
typescript ×1