2013-05-07 24 views
1

我正在用javascript構建客戶端Web應用程序。爲了構建模板,我使用了HandleBars.js模板,即.hbs文件。 我正在使用Jasmine框架編寫JavaScript代碼的規範。 但我堅持從規格中的源文件加載.hbs模板。如何在Jasmine中加入HBS模板?

使用Jasmine-Jquery(Link)插件我已經包含了靜態html模板。

這是一個示例模板的一部分:

<li> 
    <div class="fixedText"> 
    <div class="middleItem">Name</div> 
    <div class="midItemValue" style = "margin-right: 0.6rem;"> 
     <input id = "textNewGroupName" type="text" style = "width : 300px;" maxlength="300" name="name" value="{{name}}"> 
    </div> 
    </div> 
</li> 

包括在HBS文件。由於模板中類似的動態值(這裏是名稱),我無法使用靜態夾具方法。

回答

0

我發現下面的例子通過鏈接,我在這個問題給出的,而夾具用於HTML

loadFixtures('myfixture.html'); 

// Run test 
some.methodToTest(); 

// Expect that the methodToTest has modified the content in the div 
expect($('#fixtureId')).to...; 

我找到答案了HBS也和其計算方法如下: -

  1. ,而不是加載myfixture.html的,我裝我HBS file
  2. 此外,var t = readFixtures('myFixture.hbs')也可以做到這一點。
  3. 另一種使用方法Handlebars.compile('myFixture.hbs')
相關問題