骨干节点不工作(无头 TDD / 开发)
Posted
技术标签:
【中文标题】骨干节点不工作(无头 TDD / 开发)【英文标题】:Backbone not working Node (Headless TDD / Development) 【发布时间】:2011-12-08 14:09:33 【问题描述】:我正在尝试使用 Vows (BDD) 来测试 MyApp,使用 Backbone(需要 JQuery)。我想使用 NodeJS 进行无头开发,但是当我尝试执行 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:无法调用未定义的方法“ajax” 在 [对象对象]。 (/js/backbone.js:1082:14) ...B)
var fubar = new myapp.models.Fubar(); // 这个类已经有一个 url 集 fubar.fetch();C)
var requirejs = require('js/r.js'); requirejs.config( nodeRequire: 要求, baseUrl: 'js', ); var 誓言 = 要求('誓言'); var assert = require('assert'); //** 破解获取 JQuery 的 Window 对象 var 僵尸 = 要求(“僵尸”); var browser = 新的僵尸浏览器; browser.window.location = "http://localhost:3000"; 窗口=浏览器.窗口; //** 由于 Sinon 不是为在 NodeJS 中工作而设计的 Hack;放一些存根让它工作 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', '下划线', 'backbone', '_**myapp**_', ]);我假设下划线被拉入并正确使用。但我认为我还没有得到足够的证实。
谢谢
【问题讨论】:
【参考方案1】:好的,我可以通过让节点执行要求来完成这项工作:
jQuery = $ = require("jquery"); requirejs([ 'json2', '下划线', 'backbone', "storydesk", ]);现在,我需要插入一个Sinon fakeServer,看看如何
【讨论】:
以上是关于骨干节点不工作(无头 TDD / 开发)的主要内容,如果未能解决你的问题,请参考以下文章
ApolloLink 到无头 CMS/跨域域(Wordpress WPGraphQL 端点)不工作:Apache 500 错误