есть ли побочный эффект запуска и события, для которого нет слушателей - PullRequest
0 голосов
/ 21 февраля 2020

Таким образом, в магистрали, когда мы go запускаем и событие, скажем

this.trigger("do:something")

, что если нет слушателей для этого, очевидно, что нет ошибок, но есть побочные эффекты, в противном случае Я должен был бы обернуть это в условное?

Ответы [ 2 ]

0 голосов
/ 27 апреля 2020

Побочных эффектов как таковых нет, но наличие таких функций и их много может привести к замедлению работы приложения.

0 голосов
/ 24 февраля 2020

Backbone определенно выполняет код при вызове .trigger. Если вы заинтересованы, вы можете следить за тем, что происходит, посмотрев на исходный код: https://github.com/jashkenas/backbone/blob/master/backbone.js

Код может составить условный досрочный возврат, если у объекта нет определенных событий , Или это может включать в себя итерацию по массивам возможных обратных вызовов, если какие-либо слушатели были добавлены.

Если у вас есть простое для проверки условное выражение, то, скорее всего, оно будет работать быстрее, чем вызов пустого .trigger, хотя разница наверняка будет никогда не будет заметным.

Если ваше условное выражение делает ваш код уродливым или основано на другом методе магистральной библиотеки, я бы пропустил его.

...