konacha を使用して backbone.js アプリケーションの DOM テストを実行したいと考えています。そして、下のkonachaに関するいくつかのエントリを読みました.
- https://github.com/markbates/informit_articles/blob/master/article_2_konacha/article_2_konacha.md
- http://www.slideshare.net/markykang/testing-javascriptcoffeescript-with-mocha-and-chai
これらのエントリは、ビューを作成して、以下のようにページ オブジェクトに配置する必要があることを示しています。
#= require spec_helper
describe "MyApp.Views.Relationships", ->
beforeEach ->
@view = new MyApp.Views.Relationships()
@page.html(@view.el)
console.log @view.el
問題: 上記のコードの console.log は @view.el に対して "undefined" を示しますが、コードは実際には問題なく動作します。
誰かが私を助けることができれば、私は本当に適用します。
ここにいくつかの興味深いコードがあります。
spec_helper.js.coffee
#= require application
#= require_tree ./support
mocha.ui('bdd')
mocha.ignoreLeaks()
beforeEach ->
@page = $("#konacha")
@sandbox = sinon.sandbox.create()
afterEach ->
@sandbox.restore()
views/users/relationships.js.coffee
class MyApp.Views.Relationships extends Backbone.View
el: '#relation-form'
template: JST['users/relationships']
initialize: ->
console.log "init"
@render()
console.log @el
render: ->
@img = $('#loading-image').html()
$(@el).html(@template({img: @img}))
this
relationships.jst.eco
<button class="btn" disabled="disabled"><%- @img %></button>
profile.html.erb(extracted)
#snip#
<% if signed_in? and @user != current_user %>
<div id="relation-form" class="action-button"></div>
<% end %>
#snip#
<script type="text/template" id="loading-image">
<%= image_tag('ajax-loader.gif') %>
</script>
<script type="text/javascript">
$(function () {
new MyApp.Views.Relationships()
});
</script>
これらのコードでやりたいことは、Twitter のようなフォロー ボタンを処理することです。
前もって感謝します。