问题标签 [ngx-formly]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
29 浏览

ngx-formly - 隐藏/显示自定义包装控件

我构建了一个自定义包装器组件,并在表单中使用它,但我试图隐藏/显示这个组件在其他控件的基础上,在这种情况下使用单选按钮。

我建立了一个我得到结果的例子。此示例是我在项目中使用的组件的简化版本,但这显示了我遇到的问题。

该示例具有由 Formly JSON 定义创建的控件、一个带有 2 个选项(项目和工作订单)的单选按钮,以及 2 个称为项目和工作订单的自定义控件。我希望能够在单选按钮中选择其各自的选项,并根据单选按钮的值隐藏每个控件,但由于某种原因,我无法做到这一点。

我正在使用 hideExpression 但表达式似乎没有被评估。

任何想法?

这是示例 Stackblitz 示例

0 投票
1 回答
64 浏览

angular - 如何使用 ngx-formly 通过 debounce 执行异步验证?

我在表单配置中尝试了以下内容:

以及以下FormlyConfig定义:

我观察到的是,无论指定的去抖如何,验证器都会立即运行。

此外,模型会通过去抖动更新,而角度形式会立即更新。

这是一个错误还是预期的行为?你如何使用 ngx-formly 去抖动验证?

这是一个堆栈闪电战:

https://stackblitz.com/edit/angular-knzoth?file=src/app/app.module.ts

谢谢!

0 投票
0 回答
29 浏览

angular - Formly 中的自定义模型

是否有可能有一个定制的正式模型?

例如,对于以下正式配置:

相应的正式模型是这样的:

我想有与每个节点关联的自定义 ID,尤其是对于数组节点。我需要将数组中的字段与外部模型相关联,并且由于正式不保留数组项的 ID,因此在许多情况下很难找到哪些数组项已被删除/修改。

我想将正式模型存储为这样的东西

请让我知道这是否可能。谢谢!

0 投票
0 回答
25 浏览

angular - matDatePicker 在我们清除输入时隐藏在角度形式的描述中

我在角度形式上使用 matDatePicker。这是它的formlyFieldConfig

现在的问题是,在我的 UI 中,当我清除输入时,描述会隐藏。我想让描述始终显示,即使用户点击其他地方也是如此。我该如何实施?

0 投票
0 回答
94 浏览

json - JSON 模式 / 正式依赖的子模式

这个问题描述起来有点棘手,所以请耐心等待,如果我遗漏了什么,请提出问题......

假设您有一个定义了特征列表的 json 对象,每个特征都具有相同的三个属性,但具有一个具有完全不同结构的属性。例如:

每个特征的实际结构是无关紧要的。我只是试图通过 json 模式来表达这一点,其中每个功能的 configurationData 结构取决于或由其父级的功能 id 值决定。

编辑:我想从技术上讲它不需要依赖,只要 configurationData 的任一结构是功能模式本身上该属性的有效模式。此外,configurationData 中的类型不是任意的,它们始终是本示例中给定功能的两种类型之一。

然而,这需要以一种可以通过 Formly 表达的方式来构建,因为我正在使用它来生成表单。在这种情况下,它将是一个 ObjectFieldTypes 数组,一个用于特征 a,一个用于特征 b,它将枚举三个属性并提供输入字段类型,直到它到达 configurationData,此时它将再次使用 ObjectFieldType,这将现在每个字段类型都不同。

这里的问题是 1)我不确定如何在 json 模式中表达这一点,2)我不能将 patternProperties 之类的东西与 formly 一起使用,因为必须在 json 模式中明确定义属性才能正式呈现每个属性的字段类型。尽管在这种情况下 patternProperties 在技术上是有效的模式,但如果模式没有定义这些属性,那么 FormGroup 上可观察到的 valueChanges 中的模型将完全排除它们。所以我最终会得到:

我已经尝试过 if then else 构造,但我无法判断架构是否错误,或者是否正式不支持这一点。我为此做了一个堆栈闪电战: https ://stackblitz.com/edit/angular-g45ydm?file=src%2Fassets%2Fjson-schema%2Fif_then.json

0 投票
0 回答
131 浏览

angular - ngx正式:如何将onchange事件添加到json模式中数组类型内的每个字段

我有一个要求,比如一个项目取决于数组类型字段配置中的其他项目。我正在动态地将更改事件添加到一个字段,但它没有添加。代码如下所示,当我在数组中一一添加时,我需要用当前检查先前输入的元素值并决定。

JSON模式:

0 投票
0 回答
25 浏览

angular - 在 bootstart resultFormatter ngx-formly 自定义字段中获取字段键

我已经为我的autocomplete字段创建了一个自定义类型,它使用 bootstrap typeahead。这是为了搜索说“用户”。此类扩展FieldType并完美运行。

key/model/field现在,我想在引导formatter函数中访问.. 等。但变量this本身是undefined.

您能帮我了解如何获取这些变量吗?这是根据键动态获取格式化值所必需的。

0 投票
0 回答
21 浏览

angular-formly - 如何关注第一个无效的ngx-formly字段

我正在使用 ngx-formly 从字段配置中创建动态表单。在提交表单时,验证正确显示。我想首先关注无效的正式字段。

在此处输入图像描述

0 投票
0 回答
19 浏览

angular - 更改 formlyModel 不会更改 formControl

我正在使用 formly 来呈现动态表单。我呈现的文档有几个段落,单击每个段落时,我想呈现一个新的正式表单。三个段落的表单配置是完全一样的,我只是想为三个段落中的每一个收集唯一的值。

我因此呈现正式的形式

下面提供了模板随附的 Angular 文件的相关部分

单击第一段时,我有以下两个控制台日志。

对应的值form.control.g1.value如下

这正如预期的那样。但是,当我切换到第二段时,我正式的模型是

但是form.control.g1.value对应的值是

因此,虽然 key1 确实被重置,但其他两个字段没有被重置。

有人可以指导我如何进行调试吗?我搞不清楚了。

0 投票
0 回答
5 浏览

ngx-formly - 如何以角度形式验证空白输入和文本区域?

将空格视为有效值的输入和文本区域字段(表单中的禁用保存按钮不起作用)。有没有正式的选项可以处理这种情况?

在此处输入图像描述