2016-07-13 7 views
0

Я имею сценарий, в котором на основе наблюдаемого флаге мне нужно перебирать ABC и XYZНокаут связывание итерационного

Текущего код

<div data-bind="visible: isEnabled"> 
      <ul data-bind="foreach: relatedObservalableArray"> 
       <li> 
       <!-- Hundred lines of code> 
       </li> 
      </ul> 
</div> 


<div data-bind="visible: !isEnabled"> 
     <ul data-bind="foreach: unRelatedObservalableArray"> 
       <li> 
       <!-- Same Hundred lines of code> 
       </li> 
      </ul> 
    </div> 

Я чувствую код дубликат.

Можно ли каким-либо образом объединить две функции html в одну?

Я хочу изменить только в HTML-части из-за какой-то другой ...

Я новичок в нокаут. Кто-нибудь может мне помочь?

+1

Если ваш код работает, но вы хотите улучшить его, ваш вопрос, безусловно, относится к http://codereview.stackexchange.com/ – zezollo

ответ

1

Уверенный, что вы можете использовать нокаут template для этого. Подробнее here.

Так что для изменений это будет что-то вроде ниже, но вы можете делать вариации, основываясь на том, что вы читаете из ссылки, которую я дал.

<script type="text/html" id="template-name"> 
    Hundred lines of code... 
</script> 

<div data-bind="visible: isEnabled"> 
    <ul data-bind="foreach: relatedObservalableArray"> 
    <li data-bind="template: 'template-name'"> 
    </li> 
    </ul> 
</div> 


<div data-bind="visible: !isEnabled"> 
    <ul data-bind="foreach: unRelatedObservalableArray"> 
    <li data-bind="template: 'template-name'"> 
    </li> 
    </ul> 
</div> 
+0

Спасибо Сработало :) – Antguider

 Смежные вопросы

  • Нет связанных вопросов^_^