Wondering what’s next for npm?Check out our public roadmap! »

    backbone-moment

    1.0.0 • Public • Published

    Backbone-moment

    Travis Status Code Climate Score Coverage Dependency Status

    About Backbone-moment

    This plugin modifies Backbone.Model adding a convenient getter/setter for date attributes using moment.js

    var myModel = new Backbone.Model();
     
    var fooDate = moment('1997-1-1');
     
    myModel.setMoment('fooDate', fooDate, { silent: true });
     
    myModel.get('fooDate'); // returns "1997-01-01T06:00:00+00:00"
     
    moment.isMoment(myModel.getMoment('fooDate')); // is true
     
    // [http://momentjs.com/docs/#/query/is-same/](http://momentjs.com/docs/#/query/is-same/)
    myModel.getMoment('fooDate').isSame(fooDate); // is true

    Additionally you can use the shorthand moment for getting and setting

    var fooDate = moment('1997-1-1');
     
    myModel.moment('fooDate', fooDate, { silent: true });
     
    myModel.moment('fooDate').isSame(fooDate); // is true

    You can clear a moment by setting undefined, null, or ````

    myModel.moment('fooDate', undefined);
     
    myModel.moment('fooDate'); // returns undefined

    Backbone.__moment is a reference to moment. If you have a modified or specially loaded moment, you will need to shim in a copy.

    require('backbone-moment');
    Backbone.__moment = require('my-moment');

    By default backbone-moment stores dates as UTC strings Override Backbone.Model.formatMoment if you need to change this behavior

    var MyModel = Backbone.Model.extend({
      formatMoment: function(attr, date){
        return Backbone.__moment(date).utc().format();
      }
    });

    Project Details

    Library Downloads

    You can download the latest builds directly from the dist folder above.

    Available Packages

    Via npm

    $ npm install backbone-moment
    

    Via bower

    $ bower install backbone-moment
    

    Currently Backbone-moment is available via npm and bower. If you would like add it to another channel, please open an issue.

    Changelog

    For change logs and release notes, see the changelog file.

    Compatibility and Requirements

    Backbone-moment supports IE8+ and modern browsers.

    Github Issues

    Report issues with Backbone-moment, and submit pull requests to fix problems or to create summarized and documented feature requests (preferably with the feature implemented in the pull request).

    ===

    This library is © 2015 Paul Falgout. Distributed under MIT license.

    Install

    npm i backbone-moment

    DownloadsWeekly Downloads

    3

    Version

    1.0.0

    License

    MIT

    Unpacked Size

    30.7 kB

    Total Files

    22

    Last publish

    Collaborators

    • avatar