echarts存在一个问题,就是要么es6来调用,要么js来调用。那么如果我要把代码剥离出来,那该咋办呢。
那就重新打包一下,把所有东西都打包到一个文件中。
下面这个文件,用rollup打包输出,然后使用plugin再import进来就可以了,相当于转发了一下。
比如:
import * as echarts from "echarts";
import "echarts-liquidfill";
import "echarts-wordcloud";
import "echarts-gl";
import { transparent } from "./transparent";
import { dark } from "./dark";
import { vintage } from "./vintage";
var pelPlugin = echarts;
// theme注册
echarts.registerTheme("transparent", transparent);
echarts.registerTheme("dark", dark);
echarts.registerTheme("vintage", vintage);
export { plugin };
import * as ol from "ol";
import $ from "jquery";
import * as echarts from "echarts";
import html2canvas from "html2canvas";
// 此处仅引入基础ol方法,对于其他方法(如source等),在pel中引入使用
var pelPlugin = { ol, $, echarts, html2canvas };
export { pelPlugin };
用的时候可以这么用,也可以直接import进来。
await import(`${fileRoute}echarts.js`)
.then(async ({ plugin }) => {})