14

例については、私のjsfiddlerを参照してください。

http://jsfiddle.net/cYYEt/

別の方法がある場合は、配列などをバインド/作成する必要があります。リストまたはスパンを使用してこの問題を解決しました

ありがとう!

JS

var mainViewModel = function () {
    var self = this;

    this.Items = ko.observableArray();

    this.init = function () {
        var itemsArray = [];
        for(var i = 0; i < 1300; i++){
            itemsArray.push("My value is: " + i);
        }
        self.Items(itemsArray );
    };
};

$(function () {
    myApp = new mainViewModel();
    ko.applyBindings(myApp);
    myApp.init();
});​

HTML

<!-- ko foreach: Items -->
    <div data-bind="text: $data"></div>
<!-- /ko -->​
4

1 に答える 1

17

http://jsfiddle.net/rniemeyer/RAfNv/のように、「テンプレート」を囲むテキストノードを削除することで、Chromeを適切に改善できます。

<!-- ko foreach: Items --><div data-bind="text: $data"></div><!-- /ko -->

いつかコアでこれを改善することを目指していると思います。以前はhttps://github.com/SteveSanderson/knockout/pull/709のようなものを見ていましたが、この時点で変更を追加することはありませんでした。

于 2013-01-02T15:30:16.717 に答える