2013-03-12 7 views
0

Если ToStringStub является вычисляемым, как лучше всего назначить его текущее значение EmailList, без какого-либо из пропущенных вычислений?Как присвоить вычисленное значение наблюдаемому

self.EmailList = ko.observable(self.ToStringStub()); 
+0

Что вы имеете в виду, без каких-либо вычисленной вещи получать передается? Это должно просто передать значение вычисляемого, ничего другого. Что вы видите? –

+0

простая симуляция в jsfiddle может помочь лучше понять проблему. –

+0

, выполнив вычисление таким образом, то вы просто получите значение. У вас будут проблемы только в том случае, если вы его не выполнили – Thewads

ответ

2

Если я понимаю вашу потребность правильно, и вы хотите назначить ToStringStub (вычисляется наблюдаемое) для адресов электронной чем нет необходимости создавать адресов электронной наблюдаемыми, просто сделать это:

self.EmailList = self.ToStringStub; //no need to use function parenthesis '()' 

Теперь приведенный выше код будет автоматически создайте EmailList, наблюдаемый на ToStringStub, и всякий раз, когда ваши ToStringStub вычислят наблюдаемые изменения, ваш EmailList также изменится.

Но ваш EmailList и ToStringStub всегда имеют одинаковые значения.

Fiddle example

+0

На самом деле я хочу инициализировать self.EmailList (наблюдаемый) с текущим значением self.ToStringStub(), это имеет смысл? – FutuToad

+0

Хорошо, если вы просто хотите инициализировать свой EmailList текущим значением вашего вычисленного наблюдаемого, чем ваш код (упомянутый в вопросе), может выполнить эту работу. Но помните, что после этого не будет зависимости между вычисленным наблюдаемым и вашим наблюдателем EmailList. Если вы дадите мне лучшее понимание вашей ситуации, чем я могу лучше сказать, имеет ли это смысл. – gaurav

+0

Да, как я хочу и понимаю, что это работает, проблема заключается в следующем: FutuToad

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