首页 > 解决方案 > 淘汰赛中的自定义组件绑定

问题描述

我正在尝试使用 knockoutjs 加载自定义组件。

这是我的 HTML:

<div id="mainDiv"></div>

JS:

$("#mainDiv").append("<my-component-name></my-component-name>");

这附加<my-component-name></my-component-name>在 div 之后,但不会将我的组件绑定到 html。

如果我使用ko.applyBindings(); 它会引发错误"Error: You cannot apply bindings multiple times to the same element."

我找不到绑定有什么问题。

标签: javascripthtmlknockout.js

解决方案


视图已更新,但绑定未更新。ko.applyBindings在第一次应用绑定后,您需要对插入 HTML 中的任何元素进行操作。在应用绑定之后应用组件是一个糟糕的解决方案。并且不要将淘汰赛与 jQuery 或 js DOM 操作混为一谈,PLEEEASSE!


推荐阅读