#node.js #backbone.js
#node.js #backbone.js
Вопрос:
Я пытаюсь использовать Vows (BDD) для тестирования моего приложения, используя магистральный (для которого требуется jQuery). Я хочу использовать NodeJS для безголовой разработки, но я получаю ошибку A), когда пытаюсь выполнить код в B). По сути, объект jQuery не входит в область действия магистральной библиотеки. Но все было запрошено / импортировано, как в C). У кого-нибудь успешно работает магистральный узел на NodeJS. Я знаю о nodechat (скачал код и попытался его запустить) и моделях магистрали в блоге сервера, примерах, но они не работают с тем, что я настроил. Я использую Node (v0.5.10-pre) и Backbone v (0.5.3).
A)
Ошибка типа: невозможно вызвать метод 'ajax' неопределенного в [object Object] . (/js/backbone.js:1082:14) ...
Б)
var fubar = новый myapp.models.Fubar(); // у этого класса уже есть URL, установленный fubar.выборка ();
C)
var requirejs = требовать ('js/r.js '); requirejs.config({ nodeRequire: требовать, baseUrl: 'js', }); var vows = требовать ('vows'); var assert = требовать ('утверждать'); //** Взломать, чтобы получить объект Window для jQuery var zombie = require("зомби"); var browser = новый зомби.Браузер; браузер.окно.местоположение = "http://localhost:3000 "; window = browser.window; //** Взлом из-за того, что Sinon не предназначен для работы в NodeJS; добавление некоторых заглушек, чтобы заставить его работать sinon = require('sinon'); var xhr = require("sinon / lib /sinon /util/fake_xml_http_request"); var fakeServer = require("sinon / lib /sinon/util/fake_server").fakeServer; requirejs(['jquery-1.6.4', 'json2', 'подчеркивание', 'магистральный', '_** myapp **_', ]);
Я предполагаю, что подчеркивание вставлено и используется правильно. Но я не думаю, что я продвинулся достаточно далеко, чтобы подтвердить.
Спасибо
Ответ №1:
Хорошо, я смог заставить это работать, заставив узел выполнить требование:
jQuery = $ = require("jquery"); requirejs([ 'json2', 'underscore', 'backbone', "storydesk", ]);
Теперь мне нужно подключить Sinon fakeServer и посмотреть, как