asp.net-mvc - 带有 ASP.NET MVC 的 Vue.js
问题描述
我刚刚开始尝试Vue.js
并将其应用于现有ASP.NET MVC 5
应用程序。
该应用程序有一个带有许多输入控件的表单:
<div id="vueApp">
...
@Html.TextBoxFor(model => model.FullName, new { @v_model = "fullName", @class = "form-control input" })
@Html.TextBoxFor(model => model.Branch, new { @v_model = "branch", @class = "form-control input" })
有些地方最后有一个摘要,让用户在提交之前查看数据:
<label>Name</label>: {{ fullName }}
<label>Branch</label>: {{ branch }}
脚本如下:
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue@2.6.0"></script>
<script type="text/javascript">
myObject = new Vue({
el: '#vueApp',
data: {
fullName: '',
branch: ''
}
})
</script>
如果从所有字段为空开始,这很好。但是,如果某些字段使用来自服务器的值进行初始化,或者在用于编辑现有记录时,这些字段将显示为空。
解决方案
可能有更优雅的方法可以做到这一点,但我认为应该有效的一种简单方法是更新您的脚本:
<script type="text/javascript">
var fullNameVal = $('#FullName').val();
var branchVal = $('#Branch').val();
myObject = new Vue({
el: '#vueApp',
data: {
fullName: fullNameVal,
branch: branchVal
}
})
</script>
推荐阅读
- docker - Docker Desktop 无法切换到 Windows 容器
- java - 带有自定义 HTTP 错误响应的自定义 ConstraintValidator 消息
- javascript - 如何使用 Node.js 随机化 JavaScript 对象中的单个值
- javascript - 如何在 DataTable().row.add() 之后继续自定义 dataTable?
- python - 在字典中自动增加相同的值
- flutter - Flutter中的组件卸载(相当于React componentWillUnmount) - Flutter web
- c++ - 在访问私有元素时重载 << 运算符(朋友)
- java - 我在我的 firebase recyclerview 适配器的 logcat “E/RecyclerView:未连接适配器;跳过布局”中收到以下错误
- java - Java 运行时没有正确格式化 python args
- discord.js - discord.js 无论他们如何编写命令,我如何让机器人工作,比如 -piNG