小编Cyc*_*one的帖子

在骨干网中创建基本导航

我是骨干的完整菜鸟,并决定尝试使用骨干作为结构创建一个或两个网页.我的第一个任务是创建一个基本的导航.我的页面住在这里http://dalydd.com/projects/backbone.html 这里是我的javascript因此毛皮创建一个小的导航项目

(function($){
  var NavigationItem = Backbone.Model.extend({
    defaults: {
      name: '',
      href: '',
      last: false,
      id: ''
    },

    initialize: function() {

    }
  });

  var home = new NavigationItem({name: 'home', href: '/home', id:'home'});
  var about = new NavigationItem({name:'about', href: '/about'});
  var contact = new NavigationItem({name:'contact', href: '/contact', last:true});

  var TopNav = Backbone.Collection.extend({
    model: NavigationItem,
  });

  var topNav = new TopNav();

  NavView = Backbone.View.extend({  
    el : $('ul'), 

    initialize: function(){
      _.bindAll(this, 'render'); 
      this.render();  
    },  

    render : function() {
      var self = this; …
Run Code Online (Sandbox Code Playgroud)

javascript backbone.js

5
推荐指数
1
解决办法
674
查看次数

Backbone Model使this.set不是Model.initialize中的函数

我有一个模型听取发布事件"更新:TotalCost",当属于集合C的任何模型M发生变化时,它从(不相关的)集合C触发.

此事件在初始化方法中编码,如下所示.收到事件后,我收到以下错误:

TypeError:this.set不是函数 this.set({"totalsale":value});

CostModel = Backbone.Model.extend({     
  defaults: {
    totalSale: 0,
    totalTax: 0
  },

  initialize: function(attrs, options) {
    if(options) {
      if(options.vent) {
        this.vent = options.vent;
      }
    }

    this.vent.on("update:TotalCost", function(value) {
      this.set({ "totalSale": value}); **//ERROR HERE**
    });
  }
});
Run Code Online (Sandbox Code Playgroud)

javascript-events backbone.js underscore.js backbone-model marionette

4
推荐指数
1
解决办法
8354
查看次数