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
Backbone.js 如何在Jasmine的onShow中测试主干Marionnete方法?_Backbone.js_Coffeescript_Jasmine_Marionette - Fatal编程技术网

Backbone.js 如何在Jasmine的onShow中测试主干Marionnete方法?

Backbone.js 如何在Jasmine的onShow中测试主干Marionnete方法?,backbone.js,coffeescript,jasmine,marionette,Backbone.js,Coffeescript,Jasmine,Marionette,我试图在主干木偶网中测试一个视图,但是onShow()从未被调用,因此我无法测试在该方法中被调用的方法 视图/测试.coffee onShow: () -> debugger # this never happens when I run the Jasmine tests alert "HI" spec/javascripts/views/test\u spec describe 'a test', -> beforeEach -> @vi

我试图在主干木偶网中测试一个视图,但是onShow()从未被调用,因此我无法测试在该方法中被调用的方法

视图/测试.coffee

onShow: () ->
  debugger # this never happens when I run the Jasmine tests
  alert "HI"
spec/javascripts/views/test\u spec

  describe 'a test', ->

    beforeEach ->
      @view  = new window.TestView
      @view.render()

    it "does something", ->
      # not important
onShow()
通常只有在区域内显示时才会被调用。您有两个测试选项

1)渲染后手动调用
onShow

@view.render();
@view.onShow();
2)显示区域内的视图:

@view.render();
@view.onShow();
您只需在测试文件中创建一个新区域,如果不需要使用DOM,只需添加一个分离的DOM元素,否则只需创建一个元素并将其放入DOM中即可

旁注***我不知道咖啡脚本,所以下面的语法可能不正确


您还可以触发onShow。对不起,没有咖啡脚本

view.triggerMethod("show");