问题标签 [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 投票
1 回答
246 浏览

javascript - Formly, primeng not able to set value of mindate(datepicker) in component using angular

I am using angular formly and primeng. I have FormlyFieldCalendar and AppComponent in place. Setting the property of minDate in and initialiting the value in FormlyFieldCalendar with minDate works fine, but when i am trying to set the minDate in AppComponent field its not working. Please find below both the scenarios, i have built the sample on StackBlitz for demonstration with link : https://stackblitz.com/edit/ngx-formly-ui-primeng-d7v5g4-nu6ctj?file=app/formly-field-primeng-calendar.ts

Scenario 1: (Works fine)

enter image description here

Scenario 2: (Not working)

I now tried removing the code of setting minDate in FormlyFieldCalendar instead trying to set in Appcomponent by 2 ways.

  1. By assigning in templateOptions.
  2. By using datePickerOptions provided in formly.dev webpage but seems doesnt work with primeng.

enter image description here

0 投票
1 回答
88 浏览

javascript - 根据对象数组内的对象条件返回布尔值

我觉得这是一个非常简单的问题,但在过去的几个小时里我一直在努力解决这个问题。

我的 formState 包含一个内部包含多个对象的数组,我需要确定每个对象(displaySubmenu)内部的值是 true 还是 false 并返回 true 或 false 以触发 hideExpression .. 到目前为止,我只设法触发所有页面上的元素或第一个或最后一个元素..

我也尝试过使用 forEach, map 但我觉得我错过了一些非常简单的东西,只是不明白是什么

0 投票
1 回答
1335 浏览

angular - 对 ngx-formly 自定义模板进行单元测试

我正在使用Formly并创建了几个自定义模板。组件中包含的唯一代码是对通用错误处理服务的调用,因此除了可以创建组件之外几乎没有什么要测试的。我只使用 Jest 进行单元测试,但无法弄清楚我需要包含什么才能使组件成功编译。

我得到的错误是:TypeError:无法读取未定义的属性'formControl'。我不确定我在测试中缺少什么。

对于最简单的组件(主要是样式和指令 - 现在已删除),我有以下内容:

零件:

看法:

单元测试:

提前致谢!!

0 投票
1 回答
654 浏览

angular9 - ngx-Formly - 默认显示第一个数组输入而不初始化空模型

我正在使用 ngx-formly 的 JSON Schema 方法来构建自定义表单(Angular 9 + ng-bootstrap + bootstrap 4)。我们的应用程序有很多数组输入——有些甚至是嵌套的。我使用了来自https://formly.dev/examples/advanced/json-schema的自定义数组类型代码来实现数组显示。

基于数组输入模式的表单呈现 - 在嵌套层次结构是需要的意义上是正确的。但是,在数组输入的情况下 - 表单字段不会出现,直到有人单击添加(加号)按钮以显示第一组输入。从 UI 的角度来看,即使用户没有为数组输入任何值(这些不是强制输入),我们也需要至少显示一组字段。

到目前为止,从文档看来,似乎有两种方法

  1. 使用数组的第一项为空或 null 初始化模型对象似乎是使字段出现的方式。但是我们需要进行空/脏/未触及检查以不将这些字段提交到后端。
  2. 我们将数组类型定义文件中的模板更改为默认显示一组空字段。没有尝试过这种方法,如果强制显示一组字段,不确定数组字段的绑定将如何工作。

还有另一种方法可以实现这一点 - 通过使用一些选项字段?

0 投票
2 回答
874 浏览

angular - Angular formly:有没有办法为所有输入设置默认选项

我有一个正式的表格,mat-inputs里面有很多(是的,我正在使用材料)。我希望他们每个人都有appearance=outline原因,我可以把它放在templateOptions每个输入中。但这不是 DRY。有没有办法在我的应用程序中appearance为每个设置默认值,mat-input而不是把它放在每个输入描述中?

UPD。我通过以下方式使用正式表单组件

form使用循环(循环fieldsDescription数组)和角度形式生成器生成。fieldsDescription是从后台下载的。现在我appearance=outline输入了每个输入。fieldsDescription如下的对象数组也是如此

0 投票
1 回答
975 浏览

angular - Angular 10 - Formly - 在自定义 formly-wrapper 中访问字段的值

我正在使用 Angular 10 并且有一个包含名为session. 该选择字段允许我选择几个dndSession选项之一。每个选项的值是一个具有一对键值对的对象。

我希望能够在我的选择字段旁边有一个打开 modal-component 的按钮app-session-update-modal。我计划使用一个名为's选项的自定义字段包装器来添加它。我想将当前选择的-object 绑定到我的-component,以便我可以在那里编辑它。这是我遇到问题的地方。session-edit-wrapperwrappersessionFormlyFieldConfigdndSessionapp-session-update-modal

如何访问包装器中字段的值(在 ng-container 的打击 HTML 中fieldComponent)以将其绑定到我的模态组件上的属性?有我可以使用的事件吗?(到目前为止,我尝试了 ngModelChange,但没有成功)

我知道我需要将dndSession-objects 绑定为Subject<dndSession>(from rxjs),因为我总是希望按钮能够编辑当前选定的dndSession. 但是我该如何建立这种联系呢?

下面是我的 Wrapper 的当前 HTML,我知道这是非常错误的,但我目前只是猜测正确的语法是什么样的。如前所述,目标是将Subject<dndSession>-object 绑定到session_subject我的模态组件的属性:

0 投票
1 回答
1026 浏览

angular - ngx-formly:如何为 dateTimePicker 等自定义控件正式触发模糊事件?

模糊事件不会以角度形式触发自定义控件。如何为自定义组件绑定模糊事件?我已经为 dateTimePicker 创建了自定义控件,并使用了 Angular 版本 9、正式版本 5.5 的 Material UI

0 投票
1 回答
199 浏览

javascript - Bootstrap Modal弹出组件在单击角度形式元素时不起作用

我有一个要求,我正在使用多种角度形式的选择,每行也有徽标。单击此徽标时,我想加载模态弹出组件,我正在关注 Stackblitz 演示,用于在单击元素时调用 app.component 中的模态组件。

我遵循的演示链接: Bootstrap modal Stackblitz Demo

我正在实施的解决方法演示如下:Workaround Demo Stackblitz

我在单击带有函数openModal()的徽标时遇到的错误是未定义的对象。

在此处输入图像描述

我如何在使用角度形式时纠正这个问题?

以下是代码片段:

多选形式组件

调用模态组件(calenderComponent)的app.component.ts

0 投票
1 回答
249 浏览

angular - 如何在 ngx-formly 上使用隐藏的表单元素延迟触发级联

ngx-formly 中级联示例select默认显示这些级联。所以初始化观察者的钩子起作用了。

就我而言,我有更复杂的设计。我想隐藏这些选择并根据用户选择显示它们。

但这样一来,sportControl表单初始化时表单控件为空。valueChanges无法设置这些观察者。

有什么建议么?

0 投票
1 回答
564 浏览

angular - 如何将 templateOptions.options 用于 ngx-formly 多复选框字段

我是我的 Angular 应用程序,我需要从我的应用程序(组件或服务)内部的一个函数中设置多复选框字段的选项。我不知道如何工作templateOptions.options,我应该如何写值?

这是我的 json 代码: