backdash

backbone js with lodash, ready for browserify

npm install backdash
3 downloads in the last week
72 downloads in the last month

backdash

A fork of backbone designed for use with lodash and browserify.

Install

npm install backdash

Key Differences

backbone.js

Line 42 changed from:

if (!_ && (typeof require !== 'undefined')) _ = require('underscore');

to:

if (!_ && (typeof require !== 'undefined')) _ = require('lodash');

package.json

Line 8 changed from:

"underscore"  : ">=1.4.3"

to:

"lodash": "2.4.1"

Versions

This version of backdash is based on Backbone 1.1.0 and Lodash 2.4.1

Use those versions explicitly in any other module that will build into the target project. Multiple versions of lodash in the dependency tree will cause multiple versions to appear in the built browserify bundle.

Also, it is helpful to run npm dedupe after adding modules to the project in order to optimize files within node_modules and, consequently, during dependency resolution at build.

Usage

First, install lodash and backdash:

npm install lodash
npm install backdash

Then, in each model/collection/view/router, use exactly like Backbone

var _ = require('lodash');
var B = require('backdash');

var ContentView = B.View.extend({
...
});

Use with a DOM Library

As before, lodash and jQuery (or an api-compatible library such as Zepto) must exist on the window (or, as called in backbone source, root). When building with browserify, the easiest solution is to either:

  • If loading jQuery from a CDN, explicitly set B.$ = global.$; immediately after the first require('backdash') (likely in the entry file used to build the project)
  • require('jquery') before you first require('backdash')
npm loves you