使用 Knockout 组件 + Asp.Net MVC 时,以下代码段是一个好习惯吗?我可能缺少的任何缺点?
基本上是通过使用 Razor 服务器端渲染注入部分 ko 组件依赖项(主要是初始数据)...
代码片段:
<my-component params="{
foo: '@Model.FooProperty',
bar: '@Model.BarProperty',
baz: @Json.Encode(@Model.SomeArray)
}"> </my-component>
编辑:
为了避免@Quango 指出的字符串转义问题,我实现了这个助手:
public static stringEscapeString(this HtmlHelper helper, string value)
{
return HttpUtility.JavaScriptStringEncode(value, true);
}
用法:
<my-component params="{
foo: '@Html.EscapeString(Model.FooString)', ...