Добрый вечер, столкнулся с такой проблемой, при нажатии на кнопку button, выводит подобного рода ошибку "Uncaught TypeError: this._abortRequest is not a function", хотя сама функция _abortRequest есть
Сам код:
modules.define(
'add-schedule',
['i-bem__dom', 'location', 'jquery'],
function(provide, BEMDOM, location, $) {
provide(BEMDOM.decl(this.name, {
onSetMod: {
js: {
inited: function () {
this.button = this.findBlockInside('button');
this.button.bindTo('pointerclick', this._onClick);
}
}
},
_onClick: function(e) {
this._abortRequest();
this
.setMod('disabled')
.setText('Пожалуйста подождите...');
this._xhr = $.ajax({
type: 'GET',
dataType: 'html',
url: '/schedule',
cache: false,
context: this
}).done(function (html) {
this._onSend(html);
});
},
_abortRequest: function () {
this._xhr && this._xhr.abort();
},
_onSend: function(e) {
if(this.hasMod('disabled')) {
console.log(true)
}
}
}));
});
HTML
<span class="p-title__button add-schedule i-bem" data-bem="{"add-schedule":{}}">
<button href="/add" class="button button_theme_islands button_size_m button_view_action button_type_link button__control i-bem" role="button" type="button" data-bem='{"button":{}}'><span class="button__text">Добавить расписание</span></button>
</span>
this.button.on('click', this._onClick, this);
?apsavin, не особо помогло, теперь не пишет ошибку, просто ни чего не работает...