Недавно я работал с JsViews. Но у меня возникла проблема с $.observable(array).refresh()
Скажем так, если у меня есть массив объектов
countries = [
{country : 'India'},
{country : 'USA'},
{country : 'Africa'}
]
Когда я использую шаблон для циклического просмотра каждого элемента в массиве, он отображает содержимое в соответствии с моим требованием, но когда я смотрю на структуру HTML, она выглядит следующим образом.
<html>
<body>
<script type="jsv#1"></script>
<div class="country">India</div>
<script type="jsv/1"></script>
<script type="jsv#2"></script>
<div class="country">USA</div>
<script type="jsv/2"></script>
<script type="jsv#3"></script>
<div class="country">Africa</div>
<script type="jsv/3"></script>
</body>
<html>
Но когда я получаю новый элемент в массиве и нажимаю его наверх. У меня есть следующий массив.
countries = [
{country : 'Canada'},
{country : 'India'},
{country : 'USA'},
{country : 'Africa'}
]
И тогда я применяю
$.observable(countries).refresh(countries);
Что я получаю в структуре html:
<html>
<body>
<script type="jsv#1"></script>
<script type="jsv/1"></script>
<script type="jsv#2"></script>
<script type="jsv/2"></script>
<script type="jsv#3"></script>
<script type="jsv/3"></script>
<script type="jsv#4"></script>
<div class="country">Canada</div>
<script type="jsv/4"></script>
<script type="jsv#5"></script>
<div class="country">India</div>
<script type="jsv/5"></script>
<script type="jsv#6"></script>
<div class="country">USA</div>
<script type="jsv/6"></script>
<script type="jsv#7"></script>
<div class="country">Africa</div>
<script type="jsv/7"></script>
</body>
<html>
Здесь теги «jsv#1», «jsv#2», «jsv#3» и соответствующие им закрывающие теги не удаляются.
Я обнаружил эту проблему с JsViews V1.0, выпущенным в 2012 году.
Это правильное поведение или я должен использовать другой подход к вставке элементов.
Спасибо.