javascript - backbone添加事件报错?

查看:96
本文介绍了javascript - backbone添加事件报错?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

    <script>
        var obj1 = {
            "title": "til1",
            "desc": "this is one"
        }
        var obj2 = {
            "title": "til2",
            "desc": "this is two"
        }

        var MyObj = Backbone.Model.extend({});
        var myobj1 = new MyObj(obj1);
        var myobj2 = new MyObj(obj2);

        var MyView = Backbone.View.extend({
            tagName : "div",
            className: "d1",

            events : {
                'click button': 'handleClick'
            },
            initialize: function() {
                this.listenTo(this.model, "change", this.render);
                this.listenTo(this.model, "destory", this.remove);
            },
            render: function() {
                var json = this.model.toJSON();
                this.$el.html('<p>'+ json.title +'</p><p>' + json.desc + '</p><button>delete</button>');
                return this;
            },
            handleClick : function() {
                this.model.destroy();
            }
        });
        var myview1 = new MyView({
            model : myobj1
        });
        var myview2 = new MyView({
            model : myobj2
        });
        myview1.render().$el.appendTo($("body"));
        myview2.render().$el.appendTo($("body"));
    </script>

代码如上,报的错误是这样的:

如果我把这行代码去除就没有问题

events : {
                'click button': 'handleClick'
            },

难道是用字符串的方式指定函数名有错误吗?不知道是什么原因?

解决方案

Backbone.js 依赖jQuery 和Underscore.js的,没引入吧。

这篇关于javascript - backbone添加事件报错?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆