setView(view) {
    if (!view || view instanceof View) {
      this.set(MapProperty.VIEW, view);
      return;
    }
    this.set(MapProperty.VIEW, new View());

    const map = this;
    view.then(function (viewOptions) {
      map.setView(new View(viewOptions));
    });
  }
Set the view for this map.
@param {View|Promise<import("./View.js").ViewOptions>|null} view The view that controls this map.
It is also possible to pass a promise that resolves to options for constructing a view.  This
alternative allows view properties to be resolved by sources or other components that load
view-related metadata.
@observable
@api