antvis / G2

📊 The concise and progressive visualization grammar.
https://g2.antv.antgroup.com
MIT License
12.13k stars 1.59k forks source link

希望G2能够支持按需加载 #364

Closed andyforever closed 6 years ago

andyforever commented 6 years ago

在应用中可能只用到了G2的几种图表类型,比如折线、柱状图等,但是需要把data-set.js(1.14M)和g2.js(1.38M)都引入进来,在应用bundle中占比很大,希望能够支持按需加载。

dxq613 commented 6 years ago

正在讨论这件事情。

leungwensen commented 6 years ago

https://github.com/antvis/f2/issues/41

trexguo commented 6 years ago

请问进展如何?

leungwensen commented 6 years ago

3.1 正式版中会包含按需加载方案,beta 版本估计四月下旬能用 @trexguo

lchunxiu commented 6 years ago

希望早些支持!!

leungwensen commented 6 years ago

最新的 @antv/g2@3.0.7@antv/data-set@0.8.7 已经支持按需加载。两种方法:

  1. 直接 require 源码,const G2 = require('@antv/g2/lib/core');,具体写法参考 lib/index.js 文件
  2. 使用源码仓库提供的 bundler(一个 electron 小程序)手动选择需要的模块进行按需构建,具体 clone 两个代码库后,npm install && npm run bundler
trampboy commented 1 year ago

@leungwensen 你好,antv/data-set 有按需加载的方案吗?目前看是整包加载的。 我现在使用后大小是1.72MB(压缩后是464.67KB)

使用版本: @antv/data-set@0.10.2

使用方法:

import DataSet from "@antv/data-set";

const ds = new DataSet();
    const dv = ds.createView().source(data);
    dv.source(data).transform({
      type: "sort-by",
      fields: ["rawData"],
      order: "ASC",
    });

谢谢。