gpt4 book ai didi

backbone.js - 如何在 Jasmine 的 onShow 中测试 Backbone Marionnette 方法?

转载 作者:行者123 更新时间:2023-12-01 21:59:39 25 4
gpt4 key购买 nike

我正在尝试测试 Backbone Marionette 中的 View ,但 onShow() 永远不会被调用,因此我无法测试在该方法中调用的方法。

View /test.coffee

onShow: () ->
debugger # this never happens when I run the Jasmine tests
alert "HI"

规范/javascripts/views/test_spec.coffee

  describe 'a test', ->

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

it "does something", ->
# not important

最佳答案

onShow() 通常仅当您在区域内显示它时才会被调用。您有两个测试选项。

1)渲染后手动调用onShow:

@view.render();
@view.onShow();

2) 显示区域内的 View :

你可以在你的测试文件中创建一个新区域,如果你不需要使用 DOM,只需添加一个分离的 DOM 元素,否则你可以只创建一个元素并将其放入 DOM 中。

旁注*** 我不了解 CoffeeScript,因此以下内容在语法上可能不正确!

beforeEach ->
@view = new window.TestView
@testRegion = new Backbone.Marionette.Region({el: document.createElement('div')})
@testRegion.show(@view)

关于backbone.js - 如何在 Jasmine 的 onShow 中测试 Backbone Marionnette 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23964921/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com