Tag: backbone.js

使用brunch和node.js模块

我想为我的客户早午餐版本和我的节点服务器使用相同的骨干模型,节点的模块系统与默认使用的commonjs模块几乎相同,但是我需要一些思考来设置不同的东西。 /server.js Backbone = require('Backbone'); _ = require('underscore'); var MyAppModel = require('./app/models/MyAppModel'); var app = new MyAppModel(); /app/models/MyAppModel.js var PeopleCollection = require('../collections/PeopleCollection'); // NODE var PeopleCollection = require('collections/PeopleCollection'); // BRUNCH var MyAppModel = Backbone.Model.extend({ initialize: function() { this.set('people', new PeopleCollection()); } }); module.exports = MyAppModel; /app/collections/PeopleCollection.js var PersonModel = require('../models/PersonModel'); // NODE var PersonModel = […]

将Backbone.iobind(socket.io)与一组node.js服务器一起使用

我使用Backbone.iobind将我的客户端骨干模型通过socket.io绑定到后端服务器,后端服务器又将这些模型存储到MongoDB中。 我使用的是socket.io,所以我可以将更改同步到其他客户端主干模型。 当我尝试在一个node.js服务器集群上运行同样的事情时,问题就开始了。 使用将会话存储到MongoDB的 connect-mongo可以轻松设置会话存储。 但是现在我不能通知所有的客户端,因为客户端分布在不同的node.js服务器之间。 我发现的唯一解决scheme是在不同的node.js服务器(例如mubsub )之间设置一个pub / sub队列,这似乎是一个非常重的解决scheme,每次更改都会触发所有服务器上的事件。

如何将节点模块导入到我的backbone.js应用程序中?

我试图包围node.js模块,要求,以及如何在backbone.js应用程序中使用模块。 现在我正在使用以代码开头的快速服务器: var express = require('express'), http = require('http'), config = require("./config"), oauth = require("oauth"), bcrypt = require("bcrypt"), sqlite = require("sqlite3"), _ = require("underscore"), exec = require('child_process').exec, app = express(), server = http.createServer(app).listen( process.env.PORT || config.port); 然后我有一个定义所有视图和模型的router.js文件。 看起来像这样的config.js文件: require.config({ baseUrl: '/', paths: { 'util' : 'assets/lib/util', 'jquery' : 'assets/lib/jquery', 'underscore' : 'assets/lib/underscore', 'backbone' : 'assets/lib/backbone' […]

Backbone.js从响应呈现数据

好吧,首先,我是Backbone.js用户的新手,我正在使用我在网上find的文档和示例的帮助来玩它。 我设法configuration上面的node.js和问题困扰我现在我觉得纯粹是缺乏我的Backbone知识,解决scheme是我希望很简单。 我在几个文档中划分了Backbone ,并且在Require.js帮助下一起工作: RecipeSearch.js router.js models(folder) ¬ recipe_collection_m.js recipe_m.js views(folder) ¬ search_v.js templates(folder) ¬ search_t.html RecipeSearch.js只是激发一切: define(["router"],function(router) { var initialize = function(hash) { if(!hash){ window.location.hash = 'search'; }else{ window.location.hash = hash; } Backbone.history.start(); }; return { initialize: initialize }; }); router.js是我处理路线的地方: define(["views/search_v","models/recipe_collection_m"] ,function(searchView, recipeCollection){ var RecipeSearchSpace = Backbone.Router.extend({ currentView: null, routes: { "search": "search", […]

有backbone.js权威指南?

我发现backbone.js有很多不同的资源和教程,其中有很多不同的地方,我认为这是骨干产品是一个非褒贬的框架,但老实说,我发现自己正在努力寻求清晰,我想要知道你用什么学习骨干,免费或付费。 我的目标是将它用于php后端(可能是laravel)或者运行Express和Sails的Node.js。

meteor下划线无法调用未定义的方法'出口'

我试图用meteor的下划线string最新的包,但开始时,我得到以下错误: W20140316-01:08:50.265(8)? (STDERR) /Users/test1/.meteor/tools/f3947a4651/lib/node_modules/fibers/future.js:173 W20140316-01:08:50.265(8)? (STDERR) throw(ex); W20140316-01:08:50.266(8)? (STDERR) ^ W20140316-01:08:50.269(8)? (STDERR) TypeError: Cannot call method 'exports' of undefined W20140316-01:08:50.269(8)? (STDERR) at Package (packages/underscore-string-latest/post.js:8) W20140316-01:08:50.269(8)? (STDERR) at packages/underscore-string-latest.js:80:4 W20140316-01:08:50.269(8)? (STDERR) at packages/underscore-string-latest.js:89:3 W20140316-01:08:50.270(8)? (STDERR) at /private/var/folders/__/74f_y9md49507s3q616snqw00000gn/T/meteor-test-run1no1trz/.meteor/local/build/programs/server/boot.js:155:10 W20140316-01:08:50.270(8)? (STDERR) at Array.forEach (native) W20140316-01:08:50.270(8)? (STDERR) at Function._.each._.forEach (/Users/gunjan/.meteor/tools/f3947a4651/lib/node_modules/underscore/underscore.js:79:11) W20140316-01:08:50.270(8)? (STDERR) at /private/var/folders/__/74f_y9md49507s3q616snqw00000gn/T/meteor-test-run1no1trz/.meteor/local/build/programs/server/boot.js:82:5 => Exited with code: 8 […]

检测任何不需要的属性的Backbone模型validation

我实现了这个简单的function来检测骨干模型中的任何不需要或未指定的属性: var Underscore = require( '/usr/local/lib/node_modules/underscore' ), Backbone = require( '/usr/local/lib/node_modules/backbone' ), Validation = require( '/usr/local/lib/node_modules/backbone-validation' ); Underscore.extend( Backbone.Model.prototype, Validation.mixin ); var User = Backbone.Model.extend( { validation: { firstname: { minLength: 1, maxLength: 20, required: true }, lastname: { minLength: 1, maxLength: 20, required: true } }, … isAttributeAccepted: function( attr ) { var retval […]

RESTful Express Mongoose&Backbone – Backbone model.remove()不起作用

我正在使用Express,Mongoose和Backbone与Marionette开发Node应用程序。 除了删除路由,所有的路由都运行正常。 如果我调用this.model.destroy,我总是得到这个错误: DELETE http://localhost:3000/api/user 404 (Not Found) 在Express的删除路由中,404被返回,就像Express不支持它一样,但是我已经看到了使用它的大量例子。 这是我的设置: mongoose纲要: var UserSchema = new mongoose.Schema( { name: String, email: String, age: Number }); User = mongoose.model('User', UserSchema); ExpressJS路线:(不工作) app.del('/api/user/:id', user.remove); 要么 app.delete('/api/user/:id', user.remove); 这个路由被骨干model.destroy()调用,但是返回错误404。 ExpressJS的user.js控制器:(工作,但没有达到因为以前的404) exports.remove = function(req, res) { var id = req.params.id; User.findById(req.params.id, function(err, user) { user.remove(function(err) { if(err) res.json(err); res.json('all good'); […]

使用主干和Express来渲染模板

我目前正在从事Web开发方面的工作。 在过去的几个月中,我一直在努力弄清楚所有的东西,并取得了很好的进展。 我在前端使用bootstrap和Backbone,这是我最近一直关注的。 这部分工作良好,所有的骨干视图呈现良好。 对于后端,我将使用Nodejs和Express。 上周我已经开始研究这个问题了。 目前,我试图通过快递服务发送到服务器的请求。 我如何处理请求并发回已经定义好的HTML页面和所有东西的Backbone视图。 我遇到了很多expression翡翠,但我不能得到它与我的骨干意见。 另外,下划线如何进入画面。 我需要在下划线和Jade之间进行select吗? 我当然会进一步从数据库中取出数据并发送到骨干视图。 感谢您的任何意见。

客户端服务器端模板nodejs

我正在使用nodejs在webapp上工作。 我本来只是服务器端HBBS模板,但后来我发现了客户端模板的骨干。 我发现它可以从服务器获取数据,然后使用hbs模板显示,而不是服务器端生成整个html页面并发送。 但是后来我也在某个地方看过,有人build议在客户端有很多的ajax调用来获取数据并显示给一个网页是不好的做法,那么对于服务器的请求就会非常多,页面显得很慢。 所以我想知道是否有一般规则可以为一个页面做多less个请求? 我应该使用经典的一个请求吗? 或者应该是一些客户端JavaScript的,然后从服务器获取数据并显示它们? 谢谢