15

我最近从 Asp .NET Core 2.2 升级到 3.1,可以在 razor 页面中使用 Razor 组件。它们看起来基本上像视图组件,除了它使用 blazor 和同一文件中的所有内容。我试图搜索,但我没有阅读任何关于使用 Razor 组件而不是查看组件的文档。

那么问题来了……

在 Razor 页面中使用 Razor 组件而不是查看组件有什么意义?这个会比较好吗?我知道视图组件设置起来有点痛苦,因为您必须设置默认视图和带有逻辑的代码隐藏文件,并且您不能在其上使用 javascript,只能在父视图上使用。我的大多数应用程序都充满了视图组件,我想知道切换到剃须刀组件有什么好处?

4

1 回答 1

15

虽然View Components更像是部分视图asynchronous,但DI友好且独立。它们主要用于view-only目的(是的,可以update logic通过AJAX添加一些,但它更像是 ahack而不是 a feature)并且主要用于重用常见的 UI 单元,如导航、登录块、侧边栏等。

Razor 组件是一种“功能齐全”的 UI 组件,可以轻松嵌套、通过组件层次结构传递参数、引发和处理 UI事件等。因此,您可以轻松地使用它们来管理您的应用程序 UI,甚至可以创建自定义UI 组件

于 2020-02-02T20:34:52.120 回答