javascript - 将 Asp.net core Page Modal 对象转换为 Vue,js 数据对象
问题描述
我正在尝试在一个项目中混合 Asp.netcore Razor Pages 和 Vue.js,其中返回的页面模式将包含数据,而 Vue 控制器将使用该数据进行客户端渲染和其他 UI 交互
Pagemodal.cs
public class SampleQuestionModel : PageModel
{
public List<QuestionViewModal> questionViewModals = new List<QuestionViewModal>();
public void OnGet()
{
MYEXAMAPI.Controllers.QuestionApiController questionApiController = new MYEXAMAPI.Controllers.QuestionApiController();
questionViewModals = questionApiController.GetQuestion();
}
}
这是我的 Razor,我使用页面模式来显示数据
@page
@model MYEXAM.SampleQuestionModel
@{
ViewData["Title"] = "SampleQuestion";
}
<h1>SampleQuestion</h1>
<script src="~/js/vue.js"></script>
<ul id="app">
<li v-for="item in questionViewModals">
{{ item.fullQuestions }}
</li>
</ul>
<script>
var vueApp = new Vue({
el: '#app',
data: {
questionViewModals: @Json.Serialize(Model.questionViewModals) //This is not working
}
})
</script>
解决方案
这是一个工作代码,您可以参考:
@page
@model RazorPages3_0Test.SampleQuestionModel
<h1>SampleQuestion</h1>
<ul id="app">
<li v-for="item in questionViewModals">
{{ item.fullQuestions }}
</li>
</ul>
@section Scripts
{
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
var vueApp = new Vue({
el: '#app',
data: {
questionViewModals: @Json.Serialize(Model.questionViewModals)
}
})
</script>
}
结果
你可以从这里下载 Vue.js
推荐阅读
- node.js - 构建 Reactjs 空白页面而不生成其他页面
- node.js - Sequelize js如何获取关联模型的平均值(聚合)
- java - 如果退出活动打开显示可见,如何在recycleview上保持不可见按钮
- oracle - 如何为多列创建sql分区?
- python - python - 如何在python中的sql参数化查询的单引号内放置参数标记
- r - 将列表列表转换为 R 中的数据框:Tidyverse 方式
- docker - 从 .env 文件导入后,docker-compose 无效,需要字符串
- r - dplyr:根据一个变量中的值逐行替换值
- ios - 在 iOS 中播放 m3u8 文件
- keras - 著名的回归神经网络