У меня есть контроллер и директива. Директива имеет выделение области с =
двухсторонней переменной с именем counter
и выражением &
с именем tick()
.Digest обновляет родительский контроллер до директивы child
Директива обновит counter
и позвонит по телефону tick()
сразу после.
Проблема заключается в том порядке, в котором эти операции произойдет:
counter
обновлена в директивеtick()
называется на контроллереcounter
обновленный контроллер
мне удалось работайте вокруг него, используя setTimeout(tick,0);
, но это своего рода хак.
Другим решением было бы для tick()
принять параметр (значение counter
).
Есть ли лучшее решение, чем те, которые я описал выше?
Я вижу. Итак, вы говорите, что второй вариант - лучший способ справиться с этим? – Francisc
Кроме того, когда вы говорите 'templates', вы имеете в виду html-файлы или директивы? – Francisc
@Francisc 'templates' всегда ссылается на HTML и да, второй способ (передача параметра в качестве аргумента функции' tick') - лучший способ справиться с этим, хотя это означает, что значение должно пройти через вашу «директиву» в этом случае. –