zzz-pc-view 0.0.96 → 0.0.98

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zzz-pc-view",
3
- "version": "0.0.96",
3
+ "version": "0.0.98",
4
4
  "main": "src/index.umd.js",
5
5
  "module": "src/index.es.js",
6
6
  "types": "src/index.d.ts",
package/src/index.es.js CHANGED
@@ -3995,8 +3995,19 @@ var LegendChangeType = /* @__PURE__ */ ((LegendChangeType2) => {
3995
3995
  return LegendChangeType2;
3996
3996
  })(LegendChangeType || {});
3997
3997
  const useLegendSelectCtrl = (param) => {
3998
+ const getLegendSelected = (defaultSelected, oldSelected = {}) => (
3999
+ // 遍历趋势图数值维度数组,生成最终的图例选择状态
4000
+ param.dimensions.reduce(
4001
+ (legendSelected, dimension) => {
4002
+ const dimensionId = dimension.id;
4003
+ legendSelected[dimensionId] = Object.prototype.hasOwnProperty.call(oldSelected, dimensionId) ? oldSelected[dimensionId] : defaultSelected[dimensionId] !== false;
4004
+ return legendSelected;
4005
+ },
4006
+ {}
4007
+ )
4008
+ );
3998
4009
  const legendSelectedRef = shallowRef(
3999
- param.defaultSelected ?? {}
4010
+ getLegendSelected(param.defaultSelected ?? {})
4000
4011
  );
4001
4012
  const onLegendSelectChanged = (event) => {
4002
4013
  legendSelectedRef.value = event.selected;
@@ -4044,22 +4055,36 @@ const useLegendSelectCtrl = (param) => {
4044
4055
  /**
4045
4056
  * 获取当前图例的选择状态。
4046
4057
  *
4047
- * @returns 当前图例的选择状态。
4058
+ * @returns 当前图例的选择状态,是一个键值对对象,键为维度 ID,值为布尔类型表示是否选中。
4048
4059
  */
4049
4060
  get legendSelected() {
4050
4061
  return legendSelectedRef.value;
4051
4062
  },
4052
4063
  /**
4053
4064
  * 设置当前图例的选择状态。
4065
+ * 会根据传入的选择状态重新生成最终的选择状态。
4054
4066
  *
4055
4067
  * @param legendSelected - 要设置的图例选择状态。
4056
4068
  */
4057
4069
  set legendSelected(legendSelected) {
4058
- legendSelectedRef.value = legendSelected;
4070
+ legendSelectedRef.value = getLegendSelected(legendSelected);
4071
+ },
4072
+ /**
4073
+ * 设置图例选择状态,考虑旧的选择状态。
4074
+ * 根据传入的新选择状态和当前的选择状态重新生成最终的选择状态。
4075
+ *
4076
+ * @param legendSelected - 要设置的新图例选择状态。
4077
+ */
4078
+ setLegendSelected(legendSelected) {
4079
+ legendSelectedRef.value = getLegendSelected(legendSelected, legendSelectedRef.value);
4059
4080
  },
4081
+ // 处理 ECharts 图表中图例选择改变的事件方法
4060
4082
  onLegendSelectChanged,
4083
+ // 处理全选按钮点击事件的方法
4061
4084
  onSelectByAllBtnClick,
4085
+ // 处理反选按钮点击事件的方法
4062
4086
  onSelectByInvertBtnClick,
4087
+ // 处理清空选择按钮点击事件的方法
4063
4088
  onSelectByClearBtnClick
4064
4089
  };
4065
4090
  };