dataZoomAction.js 850 B

1234567891011121314151617181920212223242526
  1. var echarts = require("../../echarts");
  2. var zrUtil = require("zrender/lib/core/util");
  3. var helper = require("./helper");
  4. echarts.registerAction('dataZoom', function (payload, ecModel) {
  5. var linkedNodesFinder = helper.createLinkedNodesFinder(zrUtil.bind(ecModel.eachComponent, ecModel, 'dataZoom'), helper.eachAxisDim, function (model, dimNames) {
  6. return model.get(dimNames.axisIndex);
  7. });
  8. var effectedModels = [];
  9. ecModel.eachComponent({
  10. mainType: 'dataZoom',
  11. query: payload
  12. }, function (model, index) {
  13. effectedModels.push.apply(effectedModels, linkedNodesFinder(model).nodes);
  14. });
  15. zrUtil.each(effectedModels, function (dataZoomModel, index) {
  16. dataZoomModel.setRawRange({
  17. start: payload.start,
  18. end: payload.end,
  19. startValue: payload.startValue,
  20. endValue: payload.endValue
  21. });
  22. });
  23. });