从用户上传的模板动态创建 UI 个组件

Dynamically create UI Components from User Uploaded Templates

TL;DR:需要根据用户提供的自定义模板动态创建 UI 页面。这些模板应包含足够的信息,以便为所有用户案例动态创建前端和后端。

将 TLDR 放在首位。另外,我不确定以前是否有人在这里问过这个问题,如果这是一个重复的问题,我很抱歉。

一些背景知识,我正在尝试创建一个基于 Angular 7 的 Web 应用程序,它将作为用户配置网络设备(路由器、开关等)。为了尽可能多地涵盖不同的设备和供应商,我不能让我的 UI 页面静态化。他们应该能够根据用户要求和规格进行更改。

要达到这样的目的,一般的逻辑是我们应该让用户为他们的数据和数据属性创建自定义模板,然后让他们上传到门户,这样 UI 就可以呈现了从那里动态地。

例如,用户 A 可能需要一个包含 2 个输入参数(设备名称和 IP 地址)的表单,而同一组织中的用户 B 可能需要一个包含 N 个输入参数、M 个下拉列表等的表单,对于某些复杂的配置。

所以最后要问的问题是,如果您的页面不能是静态的并且必须根据用户的要求进行更改,那么生成 UI 页面的最佳方法是什么?如果我们使用用户上传的模板,这些模板应该包含哪些信息?

我现在正在使用 Angular 7 来构建我的应用程序,但我在这方面很灵活。在这里寻求想法和集思广益。

答案是实施数据驱动UI。对于像我这样的初学者,NPM - Data Driven UI 是一个很好的起点。
为了满足我的用例,我实施了一个 Java 平台来根据 user-input 生成我的 UI 元数据,然后将其馈送到 UI 以生成 web-pages 循环围绕中央 schema/theme.