[英]Injecting dependencies to Knockout component via Razor
使用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)', ...
在我的工作中,我們在ASP.NET MVC項目中使用Knockout,並且確實考慮了這種不良做法。 但這可能不適用於您。 這是您必須自己判斷的事情
這些原因均與ALL項目無關,因此在很大程度上取決於上下文。 我嘗試列出了我能想到的盡可能多的缺點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.