node.js - 主干 Node 不工作( headless TDD/开发)

标签 node.js backbone.js

我正在尝试使用 Vows (BDD) 来测试 MyApp,使用 Backbone(需要 JQuery)。我想使用 NodeJS 进行 headless 开发,但是当我尝试执行 B) 中的代码时出现错误 A)。基本上,JQuery 对象不在 Backbone 库的范围内。但是一切都像在 C 中一样被要求/导入)。有没有人成功地让 Backbone 在 NodeJS 上工作。我知道 nodechat (下载代码并尝试运行它)和 backbone models on server blog post ,示例,但它们不适用于我设置的内容。我正在使用 Node(v0.5.10-pre) 和 Backbone v(0.5.3)。

一个)


    TypeError: Cannot call method 'ajax' of undefined
    at [object Object]. (/js/backbone.js:1082:14) 
    ... 

B)


    var fubar = new myapp.models.Fubar();   // this class already has a url set 
    fubar.fetch();

C)


    var requirejs = require('js/r.js'); 
    requirejs.config({ nodeRequire: require, baseUrl: 'js', }); 

    var vows = require('vows');
    var assert = require('assert');

    //** Hack to get a Window object for JQuery
    var zombie = require("zombie");
    var browser = new zombie.Browser;
    browser.window.location = "http://localhost:3000";
    window = browser.window;

    //** Hack due to Sinon not being designed to work in NodeJS; putting some stubs to get it working
    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', 'underscore', 'backbone', '_**myapp**_', ]); 

我假设下划线被拉入并正确使用。但我不认为我已经走得足够远来确认。

谢谢

最佳答案

好的,我能够通过让 Node 执行要求来实现它:


    jQuery = $ = require("jquery");
    requirejs([ 'json2', 'underscore', 'backbone', "storydesk", ]);

现在,我需要插入一个 Sinon fakeServer 看看如何

关于node.js - 主干 Node 不工作( headless TDD/开发),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7782150/

相关文章:

javascript - Backbone.js:如何处理模型和服务器响应之间的差异

backbone.js - 如何连接更改模型中的某些字段以反射(reflect)在 View 上?

javascript - 有没有办法减少 rails-backbone(code brew) 包含的 JS 文件的数量?

jquery - 无法使用 jquery 显示希伯来语

node.js - 阻止发布 Node 应用程序

javascript - 如何使用spawn运行和停止子服务器node.js?

javascript - 使用backbonejs作为付费服务网站是不是一个坏主意?

javascript - 无法从模板中访问 Backbone.js 集合/模型

Node.js:如何在服务器上将 base64 编码的图像保存为 png/jpg

node.js - Nodejs 表达 mime 类型问题