Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从渲染主干.View方法触发事件_Javascript_Backbone.js_Triggers_Backbone Views - Fatal编程技术网

Javascript 从渲染主干.View方法触发事件

Javascript 从渲染主干.View方法触发事件,javascript,backbone.js,triggers,backbone-views,Javascript,Backbone.js,Triggers,Backbone Views,我有一个主干。使用render方法查看块实例: render: function() { this.$el.html(_.template(this.tpl, this.model.toJSON())).removeClass('load'); this.trigger('render', this); return this; } 并为此实例添加侦听器,如下所示: block = new App.View.Block(); butto

我有一个主干。使用render方法查看
实例:

render: function() {
        this.$el.html(_.template(this.tpl, this.model.toJSON())).removeClass('load');
        this.trigger('render', this);
        return this;
    }
并为此实例添加侦听器,如下所示:

block = new App.View.Block();

button = new App.View.Button();
button.listenTo(button, 'render', button.refresh);
但是触发器
渲染
不触发

视图
block
正在从
initialize()
方法进行渲染。如果我直接调用block.trigger('render')
,listenTo将工作

你是说这个吗

渲染块时渲染按钮

block  = new App.View.Block();
button = new App.View.Button();

// have the button listen to its parent, and render itself (same as refreshing)
button.listenTo( block, 'render', button.render );

我不确定,但是,如果在
initialize()
内部调用
render()
,则在视图中附加
.listenTo()
之前会触发事件
render
。如果在附加
.listenTo()
后启动了
block.trigger('render')
,它可以正常工作,确定吗?从显示的内容来看,不清楚此渲染函数属于哪个视图,是块还是按钮?@kinakuta是正确的!我假设
button()
render()
就像上面的
render
方法一样,这是
block
方法,伙计们,对不起!。。。你解决了你的问题吗?:)