Tôi đã tìm thấy rằng trong lý thuyết ko.cleanNode()
nên loại bỏ các ràng buộc khỏi nút nếu được gọi, nhưng trong this example nó dường như không hoạt động.Làm thế nào để loại bỏ các ràng buộc từ nút trong loại trực tiếp?
Javascript:
// View model
var vm = {
name: ko.observable("John")
}
// Node to be added
var node = $("<div/>",{
id: "testing",
'data-bind' : "text: name()"
});
// First addition to body
$("body").append(node);
// Apply bindings
ko.applyBindings(vm,$("#testing")[0]);
// Remove
ko.cleanNode($("#testing")[0]);
$("#testing").remove();
$("body").append(node);
Kết quả: Bạn có thể nhìn thấy trong jsFiddle, nút đó vẫn gắn ràng buộc (event listener).
Ràng buộc KO tiêu chuẩn không theo dõi người nghe sự kiện như vậy. 'cleanNode' loại bỏ các" ràng buộc nội bộ ". Xem http://stackoverflow.com/a/15069509/2246674 - Tôi đã tìm thấy nó tốt nhất để chỉ chơi với KO như nó muốn được chơi với. – user2246674