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 如何设置主干视图事件?_Javascript_Backbone.js_Coffeescript_Underscore.js - Fatal编程技术网

Javascript 如何设置主干视图事件?

Javascript 如何设置主干视图事件?,javascript,backbone.js,coffeescript,underscore.js,Javascript,Backbone.js,Coffeescript,Underscore.js,问题是: 我有一个基于主干、下划线、Browserfy和coffeescript的项目。 项目中有一个视图: "use strict" _ = require "underscore" $ = require "jquery" Backbone = require "backbone" Works_tpl = require "modules/works/templates/works_template.coffee" mo

问题是: 我有一个基于主干、下划线、Browserfy和coffeescript的项目。 项目中有一个视图:

"use strict"

_             = require "underscore"
$             = require "jquery"
Backbone      = require "backbone"

Works_tpl     = require "modules/works/templates/works_template.coffee"

module.exports = Backbone.View.extend

    el      : ".works-wrapper"
    template: _.template Works_tpl

    events  : {
        "click .change-view__item": "changeView"
    }

    initialize: (works, type = "list")
        @render works, type
        return

    render: (works, type) ->
        @$el.html @template
        return

    changeView: ->
        console.log 123
        return
"use strict"

module.exports = '
<div class="change-view__item">Нажми на меня</div>
'
项目中有一个模板(下划线模板):

"use strict"

_             = require "underscore"
$             = require "jquery"
Backbone      = require "backbone"

Works_tpl     = require "modules/works/templates/works_template.coffee"

module.exports = Backbone.View.extend

    el      : ".works-wrapper"
    template: _.template Works_tpl

    events  : {
        "click .change-view__item": "changeView"
    }

    initialize: (works, type = "list")
        @render works, type
        return

    render: (works, type) ->
        @$el.html @template
        return

    changeView: ->
        console.log 123
        return
"use strict"

module.exports = '
<div class="change-view__item">Нажми на меня</div>
'
“使用严格的”
模块1.1
Нажми на меня
'

渲染工作正常,但事件(视图事件)不工作。请帮我把它做好。请根据我的代码回答。

初始化后缺少的
->
只是一个输入错误吗?您的代码在其他情况下工作(),您可以修改该小提琴来重现您的问题吗?尽管如此,我绝对不建议从初始化调用render,而是单独调用。还可以在render方法中返回
@
,以支持链接和访问视图渲染元素,稍后类似于
view.render().el