События не фиксируются

Я создал расширение Chrome для страницы Github Star, используя jQuery и Backbone. Вы можете попробовать это здесь: https://chrome.google.com/webstore/detail/gpmgjficglcobhpbbkbgklfcpmhpemnb а исходный код находится здесь: https://github.com/gregorym/galactic

Моя проблема заключается в следующем, на странице я вставил текстовое поле, которое фильтрует репозитории. Но иногда, когда я печатаю слишком быстро, мои события запускаются, но не перехватываются...

Вот код, запускающий события: https://github.com/gregorym/galactic/blob/master/app/views/stars/search.js#L25

И вот код, который должен их поймать: https://github.com/gregorym/galactic/blob/master/app/views/stars/index.js#L14

Есть идеи, что может быть причиной проблемы?

Спасибо Грег

1 ответ

Ваш слушатель включен self это представление Backbone, но вы запускаете элемент jQuery. И триггер, и слушатель должны находиться на одном элементе, который расширяет Backbone.Events.

PS похоже, что вы именуете все, используя name.space = name.space || {} - вам лучше реализовать функцию пространства имен, например ns('name.space.foo') или же ns('app.views.Home', Backbone.View.extend({...})

Другие вопросы по тегам