我有这行:
<label><input style="margin-top:0" type="checkbox" asp-for="Properties.IsThisChecked" v-model="isThisChecked" /> Is This Checked?</label>
<div v-show="isThisChecked">
<!-- other code...
它绑定到Vue JS模型(isThisChecked)和.NET视图模型属性(Propertied.IsThisChecked)。我已经知道v模型会忽略HTML中的所有预设值,而是采用其初始化值。但是我需要.NET视图模型的起始值。
我怎么能得到这个?
答案 0 :(得分:1)
您序列化模型并以此初始化Vue:
let data = @Html.Raw(Json.Encode(Model));
let vm = new Vue({
...
data: data
});
更新
如果您不想序列化整个模型,那很好:只序列化所需的部分。在某些情况下,根本不需要序列化。例如,如果您想要的属性已经是诸如字符串或int之类的原始类型。本质上:
data: {
someString: "@Model.SomeString",
someInt: @Model.SomeInt,
someList: @Html.Raw(Json.Encode(Model.SomeList)),
// etc.
}