尝试实现下图的布局,想请教有关页面布局架构的最佳实践。在页面的每个部分或部分 View 中拥有独立的 ViewComponent 哪个更好?是否可以嵌套 ViewComponent?
这个想法是重用不同页面中其他位置的部分。这个概念与我们过去拥有的 Web 部件非常相似,但现在我尝试使用 Asp 来实现类似的东西。网络核心。
最佳答案
是的,可以嵌套 View 组件
。
需要记住的重要事项:
- 您应该将 View 结构保留在
Components
文件夹下,保持简单 - 您应该将
ViewComponent
类保留在ViewComponent
文件夹下 - 当您将
component1
嵌套到component2
中,同时将component2
嵌套到component1
中时,您应该自己控制无限循环>
注意:您很可能需要组件包含编辑/保存/更新
功能。据我了解,View Components
应该只是 views
,因为它们只有 InvokeAsync
而不是 UpdateAsync
之类的东西。因此,如果您想实现任何类型的保存逻辑,您需要自己负责执行此操作(例如通过 AJAX
调用)。有可能(我已经验证过),但是需要熟悉Microsoft.jQuery.Unobtrusive.Ajax
和 handle responses在 JavaScript
的客户端(有时包括将 JS
中的 DOM
元素内部 HTML
替换为您想要的内容从服务器响应中获取)。您还需要决定在哪里放置 View 组件更新端点的 Controller 操作(可能是View Components
的特殊 Controller 类)。
关于asp.net-core - 嵌套ViewComponent,可以吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42681849/