Обезьянья повязка не стреляет.(Угадай, эта обезьяна не может прыгать уток.) - PullRequest
1 голос
/ 21 февраля 2012

Я пытаюсь пропатчить метод запроса JsonRest. Я ничего не делаю швами, чтобы иметь эффект. Ниже я ожидаю, что метод запроса больше не будет работать, и просто напишу «обезьяна пробивает утку». к консоли. Но увы все приложение продолжает работать, игнорируя мою вопиющую попытку сломать его. Нужно ли исправлять конкретный экземпляр?

dojo.require("dojo.store.JsonRest");
(function(query, options){dojo.store.JsonRest.query=function(){console.info("monkey punching a duck.");};})();
aprStore = new dojo.store.JsonRest({"target":"/web/rest/apr/","idProperty":"ID"});
var sqry = "?nq=aquerytorun";
aprStore.query(sqry).then(function(result){});

Основная цель - получить базовый xhrGet, чтобы я мог прикрепить обратный вызов к свойству error. .Query (функция, функция) игнорирует мою функцию ошибки, переданную в качестве второго параметра. http 302 - это то, что сводит меня с ума в данный момент.

1 Ответ

2 голосов
/ 21 февраля 2012

Не совсем понятно, что вы пытаетесь сделать, но я подозреваю, что вам нужно поместить свою функцию в прототип объекта этой вещи JsonRest:

dojo.store.JsonRest.prototype.query = function() { ... };

Тогда экземпляры, созданные из этого конструктора, будут иметь доступ к вашей функции «запроса».

...