OpenLayers - Обновление метода инициализации вызова класса - PullRequest
2 голосов
/ 21 марта 2012

Я хотел бы обновить одну из переменных в классе векторного слоя после первоначального вызова класса

OpenLayers.Layer.Observations = OpenLayers.Class(
  OpenLayers.Layer.Vector, {

где одним из параметров является метод инициализации:

initialize: function(name, displayStyle, options) {

Кажется, вы не можете просто переопределить метод инициализации ...

var lyrObs = new OpenLayers.Layer.Observations("Observations",...

lyrObs.initialize(...)

Есть ли другой способ обновить эту переменную методов инициализации?

Ответы [ 2 ]

3 голосов
/ 23 марта 2012

Посмотрите на источник! Есть много примеров. Вам нужно что-то вроде этого:

OpenLayers.Layer.Observations = OpenLayers.Class(OpenLayers.Layer.Vector, {
    initialize: function(…) {
        OpenLayers.Layer.Vector.prototype.initialize.apply(this, arguments);
        // Do what you want here
    }
});
1 голос
/ 21 марта 2012

Вы пытались сделать это таким образом?

lyrObs.prototype.initialize = function...

Кроме того, вы можете переопределить любое из свойств слоя, например lyrObs.style = ... или lyrObs.data = ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...