Отменить повторный менеджер с помощью Arcgis JS 3 - PullRequest
0 голосов
/ 15 октября 2019

Я пытаюсь реализовать инструмент редактора, операции обновления, масштабирования, буферизации и объединения на графическом слое карты, используя ArcGIS JavaScript 3 API с возможностями отмены, повтора. Может кто-нибудь показать мне, как их включить?

  "dojo/_base/declare", "esri/OperationBase", "esri/toolbars/navigation"
  ], function(declare, OperationBase, Navigation) {
    var customOp = {};
    customOp.Add = declare(OperationBase, {
      label: "Add Graphic",
      constructor: function ( /*graphicsLayer, addedGraphic*/ params) {
        params = params || {};
        if (!params.graphicsLayer) {
          console.error("graphicsLayer is not provided");
          return;
        }
        this.graphicsLayer = params.graphicsLayer;

        if (!params.addedGraphic) {
          console.error("no graphics provided");
          return;
        }
        this._addedGraphic = params.addedGraphic;
      },

      performUndo: function () {
        this.graphicsLayer.remove(this._addedGraphic);
      },

      performRedo: function () {
        this.graphicsLayer.add(this._addedGraphic);
      }
  });

  return customOp;
});
...