2016-12-07 3 views
0

В проекте я пытаюсь научиться с, у меня есть рабочий код:JavaScript в машинописном - анонимный вычислен

ko.computed(function() { 
     if (self.isUploading()) { 
      ... Do something. 
      }); 
     } 
     else { 
      ... Do something else 
     } 
    }); 

Я сейчас пытаюсь преобразовать мой код машинопись, но ... я боролся для преобразования этого бита.

Я пытаюсь:

KnockoutComputed(() => { 
    if (this.isUploading()) { 
     ... do something. 
     }); 
    } else { 
     ... do something else. 
} 

Но мне говорят "тип параметра, как ожидается".

Что я пытаюсь сделать, это выполнить некоторый код, когда «this.isUploading()» изменяет значение.

Как это должно быть достигнуто в TypeScript?

+0

Вы все равно должны называть 'ko.computed'. Или действительно, просто ничего не меняйте. Код JS по-прежнему ведет себя одинаково, нет необходимости менять код произвольно. –

+0

Я пробовал это сейчас, просто используя тот же код, но он говорит «ожидать»; после «ко». – Craig

+1

посмотрите здесь - https://jsfiddle.net/ahLzcwu4/ – gkb

ответ

0

Будьте осторожны с кронштейнами. Это должно выглядеть так:

ko.computed(() => { 
    if(this.isUploading()) { 
     //... do something. 
    } else { 
     //... do something else. 
    } 
}); 

I случай, если вы хотите, чтобы вычислить некоторое значение:

var computedValue = ko.computed<any>(() => { 
    var result: any; // some result 
    if(this.isUploading()) { 
     //... do something. 
    } else { 
     //... do something else. 
    } 
    return result; 
}); 

Примечание: изменение any к определенному типу.

+0

Спасибо! В моей версии javascript вычисляемые никогда ничего не возвращали. Он просто сделал некоторые вещи и установил несколько переменных. Это не правильный способ сделать что-то? Кажется, я ДОЛЖЕН вернуть значение? – Craig

+0

Не обязательно, чтобы вычисленное значение возвращало любое значение. Вы можете использовать вычисленное для пересчета чего-либо или сделать что-нибудь, если вы хотите подписаться к набору наблюдаемых, которые вы используете внутри этого вычисления. – TSV

Смежные вопросы