我正在尝试使用 Razor Pages 设置一个 .NET 核心项目,并在 Razor 页面中包含 vueJs 以用于我的所有逻辑。
是这样的:
@{
ViewData["Title"] = "VueJs With Razor";
}
<h2>@ViewData["Title"].</h2>
<div id="app">
<span>{{ message }}</span>
</div>
<script>
new Vue({
el: '#app',
data: {
message : 'Hello vue.js'
}
})
</script>
我读到混合 Vue 和 Razor 页面是一种不好的做法,应该使用 Razor 或 Vue。
为什么是这样?
原文由 Joel Pinto Ribeiro 发布,翻译遵循 CC BY-SA 4.0 许可协议
你可以这样做。有时你不得不这样做,如果像我们一样,你正在迁移一个现有的代码库并且你不能一次转换所有的东西。正如 Ron C 所说,它运作良好。
如果您要开始一个新项目,您可以自由选择。支持 SPA 而没有 Razor 的原因是……
反应性。 SPA 应用程序通常感觉(更)更具反应性。初始渲染通常在数据到达之前从缓存中提供。在第一次加载时,所有资源都以一个请求-响应的形式捆绑在一起。没有或更少有请求链接。
工作流程。 Webpack、捆绑和热重载都很棒。你得到生产构建,缩小,编译 Vue 渲染函数,消除 404 样式错误,捕获 js 语法错误。对于许多错误,从引入错误到发现错误的周期大大缩短。
温泉宇宙。路由,Vuex,这真的是未来的方式。
纯度。 Razor 和 Vue 在一天结束时做类似的事情。如果混合使用它们,您可能很难保持头脑清醒。