mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-07-04 01:00:05 +00:00
Added support for Array Change subscriptions. Added tests to the test_observableArrays() in knockout-tests.ts.
This commit is contained in:
6
knockout/knockout.d.ts
vendored
6
knockout/knockout.d.ts
vendored
@@ -53,7 +53,7 @@ interface KnockoutSubscription {
|
||||
}
|
||||
|
||||
interface KnockoutSubscribable<T> extends KnockoutSubscribableFunctions<T> {
|
||||
subscribe(callback: (newValue: T) => void, target?: any, event?: string): KnockoutSubscription;
|
||||
subscribe(callback: (object: Object) => void, target?: any, event?: string): KnockoutSubscription;
|
||||
subscribe<TEvent>(callback: (newValue: TEvent) => void, target: any, event: string): KnockoutSubscription;
|
||||
extend(requestedExtenders: { [key: string]: any; }): KnockoutSubscribable<T>;
|
||||
getSubscriptionsCount(): number;
|
||||
@@ -84,6 +84,8 @@ interface KnockoutObservableArrayStatic {
|
||||
}
|
||||
|
||||
interface KnockoutObservableArray<T> extends KnockoutObservable<T[]>, KnockoutObservableArrayFunctions<T> {
|
||||
subscribe(callback: (newValue: T[]) => void, target?: any, event?: string): KnockoutSubscription;
|
||||
subscribe(callback: (changes: KnockoutArrayChange<T>[]) => void, target?: any, event?: string): KnockoutSubscription;
|
||||
extend(requestedExtenders: { [key: string]: any; }): KnockoutObservableArray<T>;
|
||||
}
|
||||
|
||||
@@ -100,6 +102,8 @@ interface KnockoutObservable<T> extends KnockoutSubscribable<T>, KnockoutObserva
|
||||
peek(): T;
|
||||
valueHasMutated?:{(): void;};
|
||||
valueWillMutate?:{(): void;};
|
||||
|
||||
subscribe(callback: (newValue: T) => void, target?: any, event?: string): KnockoutSubscription;
|
||||
extend(requestedExtenders: { [key: string]: any; }): KnockoutObservable<T>;
|
||||
}
|
||||
|
||||
|
||||
@@ -108,6 +108,15 @@ function testGetter() {
|
||||
|
||||
function test_observableArrays() {
|
||||
var myObservableArray = ko.observableArray<any>();
|
||||
|
||||
myObservableArray.subscribe(function(changes){
|
||||
for(var i = 0; i < changes.length; i++){
|
||||
console.log(changes[i].index);
|
||||
console.log(changes[i].status);
|
||||
console.log(changes[i].value);
|
||||
}
|
||||
}, null, "arrayChange");
|
||||
|
||||
myObservableArray.push('Some value');
|
||||
var anotherObservableArray = ko.observableArray([
|
||||
{ name: "Bungle", type: "Bear" },
|
||||
|
||||
Reference in New Issue
Block a user