0

Treehouse の Backbone.js チュートリアルに問題があります。これが私のコードです:

var NotesApp = (function () {
    var App = {
        stores: {}
    }

    App.stores.notes = new Store('notes');
    // Note Model
    var Note = Backbone.Model.extend({
        //Local Storage
        localStorage: App.stores.notes,

        initialize: function () {
            if (!this.get('title')) {
                this.set({
                    title: "Note at " + Date()
                })
            };

            if (!this.get('body')) {
                this.set({
                    body: "No Body"
                })
            };
        }

    })

    //Views
    var NewFormView = Backbone.View.extend({
        events: {
            "submit form": "createNote"
        },

        createNote: function (e) {
            var attrs = this.getAttributes(),
                note = new Note();

            note.set(attrs);
            note.save();
        },

        getAttributes: function () {
            return {
                title: this.$('form [name=title]').val(),
                body: this.$('form [name=body]').val()
            }
        }

    });

    window.Note = Note;

    $(document).ready(function () {

        App.views.new_form = new NewFormView({
            el: $('#new')
        });

    })

    return App
})();

そして、私はエラーが発生します:Cannot set property 'new_form' of undefined

戻ってコードをできるだけ近くにコピーしようとしましたが、それでも機能しませんでした。助言がありますか?

4

1 に答える 1

3

stores: {}追加後, views: {}

ビューをアタッチするオブジェクトが必要です - JavaScript には有効化機能がありません

于 2013-03-01T18:07:02.187 に答える