Así es como yo quiero construir mi htmlCombinación de texto y HTML por nocaut
<a href="#">John <i class="person"></i></a>
Y con knockout.js esto es lo que he hecho.
<a data-bind="text:name"><i class="person"></i></a>
Como se puede adivinar elementos enteros (no sólo texto) de anclaje se quita los pisos más altos de la unión en este caso, las etiquetas de todo el interior del anclaje se elimina texto. Mi solución está abajo.
<a data-bind="html: name() + '<i class="person"></i>'"></a>
cadena concat con html en data-bind es una solución pero tiene 2 grandes inconvenientes. la propiedad de "nombre" no es segura, así que podemos obtener una inyección html. Sedondly escribir html dentro de los atributos de enlace de datos es una mierda.
Otra solución es.
<a href="#"><span data-bind="text:name"></span><i class="person"></i></a>
Sé que la introducción de nuevas marcas HTML para la solución justa. Es lo que he encontrado mejor.
¿Cuál es la solución conocida para este problema en knockout.js?
¿Podemos especificar simplemente actualizar el texto no elementos enteros dentro de la vinculación de texto a través de parámetros?
¿O mejor solución?
Esta es la solución correcta. El tema actual que estoy usando se comporta de manera diferente cuando utilicé span extra. Muchas gracias – Freshblood