mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-11-05 13:26:48 +08:00
Merge pull request #139 from NativeScript/set-observable-array-length-
missing setter for observable array added
This commit is contained in:
@@ -45,6 +45,21 @@ export var test_ObservableArray_shouldCreateArrayFromSpecifiedLength = function
|
||||
TKUnit.assert(array.length === 100, "ObservableArray should create array from specified length!");
|
||||
};
|
||||
|
||||
export var test_ObservableArray_shouldBeAbleToSetLength = function () {
|
||||
// <snippet module="data/observable-array" title="observable-array">
|
||||
// ### Set ObservableArray length to new value.
|
||||
// ``` JavaScript
|
||||
var array = new observableArrayModule.ObservableArray(100);
|
||||
// <hide>
|
||||
TKUnit.assert(array.length === 100, "ObservableArray should create array from specified length!");
|
||||
// </hide>
|
||||
array.length = 50;
|
||||
// ```
|
||||
// </snippet>
|
||||
|
||||
TKUnit.assert(array.length === 50, "ObservableArray should respect new length!");
|
||||
};
|
||||
|
||||
export var test_ObservableArray_getItemShouldReturnCorrectItem = function () {
|
||||
// <snippet module="data/observable-array" title="observable-array">
|
||||
// ### Get item at specified index using getItem(index) method.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import observable = require("data/observable");
|
||||
import observableArrayDef = require("data/observable-array");
|
||||
import types = require("utils/types");
|
||||
|
||||
export class ChangeType implements observableArrayDef.ChangeType {
|
||||
static Add = "add";
|
||||
@@ -66,6 +67,12 @@ export class ObservableArray<T> extends observable.Observable implements observa
|
||||
get length(): number {
|
||||
return this._array.length;
|
||||
}
|
||||
set length(value: number) {
|
||||
if (types.isNumber(value) && this._array && this._array.length !== value) {
|
||||
this._array = this._array.slice(0, value);
|
||||
this._notifyLengthChange();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a string representation of an array.
|
||||
|
||||
Reference in New Issue
Block a user