项目打包
阅读时间约 3 分钟
通常情况下,如果你使用的现代构建工具,如 Webpack、Rollup 或 ESBuild,你可以很容易地构建依赖于 @antv/g6
的项目。
一些构建工具例如 Vite,其底层是使用 ESBuild,因此你可以参考 ESBuild 的配置。
下面是一些示例配置,你可以参考这些配置来构建你的项目。如果你发现这些配置无法正常工作,请确保你的构建工具版本较新。
webpack
和 webpack-cli
:npm install webpack webpack-cli --save-dev
webpack.config.js
进行配置:const path = require('path');module.exports = {entry: './src/index.ts',output: {path: path.resolve(__dirname, 'dist'),filename: 'index.js',},mode: 'production',};
npx webpack
上述配置在:"webpack": "^5.94.0","webpack-cli": "^5.1.4" 可以正常工作。
⚠️ 强烈建议项目使用 Webpack 5,如果你使用的是 Webpack 4,按以下步骤配置:
如果你使用的 typescript,还需要安装 ts-loader
npm install babel-loader@8 @babel/preset-env @open-wc/webpack-import-meta-loader --save-dev
webpack.config.js
配置:module.exports = {entry: './src/index.js',output: {path: path.resolve(__dirname, 'dist'),filename: 'index.js',},module: {rules: [{test: /\.js$/,use: {loader: 'babel-loader',options: {presets: ['@babel/preset-env'],},},},{test: /\.js$/,loader: '@open-wc/webpack-import-meta-loader',},],},mode: 'production',};
rollup
及必要的插件:@rollup/plugin-commonjs
:用于加载 CommonJS 模块@rollup/plugin-node-resolve
:用于加载 Node.js 模块npm install rollup @rollup/plugin-commonjs @rollup/plugin-node-resolve --save-dev
rollup.config.js
进行配置:const commonjs = require('@rollup/plugin-commonjs');const resolve = require('@rollup/plugin-node-resolve');module.exports = {input: 'src/index.ts',output: {file: 'dist/index.js',format: 'umd',name: 'project',},plugins: [resolve(), commonjs()],};
npx rollup -c
esbuild
:npm install esbuild --save-dev
npx esbuild src/index.ts --bundle --outfile=dist/index.js