gpt4 book ai didi

database - 将 Angular 组件存储在数据库中

转载 作者:搜寻专家 更新时间:2023-10-30 23:27:46 25 4
gpt4 key购买 nike

我正在研究将组件存储在数据库中并将它们添加到 Angular 应用程序的可能性。我看到了使用 AOT 编译器在运行时从数据库添加组件的障碍。我的另一个想法是为数据库中的组件存储 HTML(使用 ng 模块,如 *ngIf 等)和 CSS,并通过在 ngInit() 函数中获取数据将其分配给组件模板和样式。主要目标是能够从数据库中更改 HTML/CSS。

有没有人对此有任何想法、经验或提示?

谢谢!

最佳答案

如您所建议的,将 HTML 存储在数据库中并在运行时将其加载到组件中是完全可能的。

在 Angular 方面,它很简单:

<div [innerHtml]="queryResult()">
whatever is in here will be replaced when queryResult returns
</div>

特别是在 headless CMS 的上下文中,这并不少见。假设您希望用户生成内容但希望 Angular 进行页面布局。然后用户将通过 CMS 生成(丰富的)内容,CMS 将(它的修改版本)作为 blob 存储在您的数据库中,并为您的前端创建后端端点以访问它。 Angular 反过来将在组件加载时请求该内容(例如通过 content.service)并处理实际 View 。当您使用 [innerHtml] 属性时,Angular 会正确处理 HTML 字符串,因此它不应该成为安全问题。

我不知道您的用例,但我不建议直接将 HTML 存储在数据库中。我强烈建议使用 headless CMS 来为您处理,但这实际上取决于您的堆栈和用例。

关于database - 将 Angular 组件存储在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54153634/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com