问题标签 [react-jsonschema-forms]

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 回答
189 浏览

javascript - React-Select 未在第一次更改时更新

我一直在尝试react-select在我的内部使用组件react-json-schema-form,并且选择字段第一次没有更新。这是我得到的行为。 行为视频

编码:

道具来自 RJSF, enumOptions 看起来像:

谁能告诉我我做错了什么?

父 RJSF:

那是父组件,我使用 react-select 作为自定义组件!

供参考: https ://react-jsonschema-form.readthedocs.io/en/latest/advanced-customization/custom-widgets-fields/

0 投票
0 回答
560 浏览

reactjs - ArrayFieldTemplate 的 React jsonschema 表单中的自定义 UI

react jsonschema form在我的应用程序中使用并在响应/请求中处理一个数组。我所做的是使用我的自定义 UI,而不是使用{element.children}它通过一些魔法创建 html 并提供所有可用的道具。下面是我的代码

我想在表格中显示input type="text"and 。为简洁起见,我删除button了数组中的其他字段。{element.children.props.formData}现在,当第一次加载页面时,数据库中没有UserNotes,所以我看到空白文本框,但是当我输入一些内容并单击submit该数组时,当后端收到请求时,该数组仍然为空。

我正在使用react with typescript.

下面是表格代码

我找不到任何以反应 jsonschema 形式将自定义 ui 与 ArrayFieldTemplate 一起使用的示例。谁能帮帮我吗?无法替换 react jsonschema 表单,因为此代码已在生产中使用。我只是想用自定义 UI 添加 ArrayFieldTemplate。

0 投票
1 回答
105 浏览

jsonschema - jsonschema 验证:特定字段的值应限制为在另一个字段中输入的值

我想知道 jsonschema 是否可以验证特定字段的值,该字段仅限于在另一个字段中输入的值。例如:

因此

如果我为“someStrings”输入“red”、“blue”、“green”,“chooseOneOfSomeStrings”如果是“red”则有效,如果是“yellow”则无效。

0 投票
1 回答
179 浏览

reactjs - 使用 CDN 库时如何启用 react-jsonschema-form 主题

我有一个庞大的 JSON 模式,我想从中生成一个 HTML/JS 表单。看来这react-jsonschema-form是一个很好的解决这个问题的方法。该框架有很好的文档,但它侧重于使用 npm 进行开发。由于超出此问题范围的原因,我只能通过没有 JSX 的 CDN + React 使用它。不幸的是,我不是 Web 开发人员,我很难弄清楚在没有 JSX 的情况下使用 CDN + React 进行开发时如何使用不同的主题。到目前为止,我有以下index.html预期工作:

.js 文件被下载并复制到与 .js 相同的目录中index.html。我正在使用 2.5.1 版react-jsonschema-form

如果有人能指出我如何使用框架的不同主题(例如,Material UI)来呈现它的正确方向,我将不胜感激。

谢谢

0 投票
0 回答
43 浏览

reactjs - React JSON Schema 提交后关注错误字段

我试图让React JSON Schema专注于提交后出现错误的第一个字段,但我找不到任何方法。

有什么想法吗?

0 投票
1 回答
123 浏览

jsonschema - 根据 Json Schema 中的另一个字段更新字段

如何根据 React Json Schema 中另一个字段的更改来更新一个字段?下面是我的模式对象。

为了简化用例,假设我有一个国家下拉字段默认设置为加拿大,货币文本字段为空。如果国家/地区发生变化,货币文本字段应显示新元。

0 投票
0 回答
41 浏览

reactjs - 如何仅显示当前选择的 rjsf `anyOf` 项的验证消息?

当子句内的两个对象anyOf共享一个同名字段时,该字段将被验证两次,每个替代项一次。即使对于当前未选择的项目,这也会显示错误消息,这会让人感到困惑。

例如,对于以下架构:

每当我在 中输入非数字字符sharedNumericField时,验证错误 should match pattern "^[0-9]*$"都会显示两次。

这是一个沙箱

我只想显示当前正在显示的项目的错误消息。有没有一种简单的方法可以做到这一点?

我能想到的唯一方法是强制向每个对象注入一个不同的隐藏值,formData根据该值识别当前选择的项目,然后使用transformErrors函数过滤掉未选择的项目 - 但我真的希望有一个更干净的方法:)

0 投票
0 回答
302 浏览

reactjs - 如何以 React json 形式制作模式依赖项以显示在一行中

我正在使用 react json 模式表单(https://react-jsonschema-form.readthedocs.io/)来创建通过模式呈现的表单。我正在尝试生成一个模式依赖项,其中基于下拉列表的选择生成不同类型的表单字段。

我以这种形式创建了 json 模式:

但是,通过在 json 模式游乐场 ( https://rjsf-team.github.io/react-jsonschema-form/ )中对此进行测试可以看出,它会在彼此下方生成 Select 运算符和相应的值框。有没有办法让所有东西都排成一行?

我研究过使用这个https://github.com/audibene-labs/react-jsonschema-form-layout来布局不同的表单元素,但我无法弄清楚 uiSchema 应该是什么样子。有什么建议么?我使用引导程序作为我的样式库。

0 投票
1 回答
30 浏览

jsonschema - 将多个格式规则应用于单个 rjsf 字段

我喜欢 rjsf 格式的 api,它对我很有用:

但我想为单个字段分配多个格式规则,并使用transformErrors api为每个字段显示不同的消息,为用户提供更准确的错误反馈。类似于以下内容:

但是这个数组表示法不起作用,而是破坏了格式:)

有没有一种干净的方法来实现我想要的?

0 投票
2 回答
28 浏览

reactjs - 如何访问“transformErrors”中的输入值

transformErrors回调中映射错误时,我需要知道相关输入的实际值。

我需要这个来创建一个系统,用于将多种现有格式组合成新的复合格式。我想将输入值与每种“基本”格式相匹配,并为失败的格式显示错误。allOf不幸的是,由于我的项目非常具体的原因,编写格式的方法对我不起作用。

tranformErrors我尝试通过currying和直接读取数据将表单数据注入我的回调:

但是这种方式value比表单的实际状态落后一个击键,这是我所期望的。不幸的是,即使我不直接传入,这也不起作用formDatamakeTransformErrors而是我传入一个包含formData并直接在 Forms 中直接改变它的对象onChange,这是我期望的。

访问字段值的其他可能方式是什么?也许可以配置(或修补) ajv 验证器以将值附加到验证错误的参数?