JQuery / JS - 定义"类"构造函数和设置属性

时间:2016-03-10 17:03:48

标签: javascript jquery javascript-events javascript-objects

我正在做一个JS脚本,它将呈现具有拾取能力的树视图。

但是有些奇怪的事情正在发生,我发现它是什么,但这不会让我开心,我想发现它为什么会发生。

首先,Fiddle

我有两个div,其中将呈现控件。 在本演示中,我有两个输入,其中显示了选择器数据。

我设置了属性picker1.mapping.idpicker1.mapping.text (line 24-29)以匹配id1text1

var picker1 = $("#render1").treePicker({ 
    mapping: {
    id: 'Id1',
    text: 'text1'
  }
});

然后,我将相同的属性设置为picker2 (line 31-36)

我的"构造函数"位于

var treePicker = function (params) {
  this.mapping.id = params.mapping.id; // Change to this.mapping.id = params.mapping.id
};

我正在扩展"类"这样做:

$.extend(treePicker.prototype, {
    mapping: {
        id: 'id',
        text: 'text',
    },
});

问题是,在执行此操作时,picker1.mapping.id不会保留自己的值,而是会保留picker2值。

但是......如果我改变了

this.mapping.id = params.mapping.id;

this.mapping = params.mapping;

它会起作用。 有什么想法吗?

0 个答案:

没有答案