使用 JSON Schema Form (Retool) 输入多个文件

Posted

技术标签:

【中文标题】使用 JSON Schema Form (Retool) 输入多个文件【英文标题】:Make multiple files input with JSON Schema Form (Retool) 【发布时间】:2021-12-11 10:12:43 【问题描述】:

Retool上,我用JSON Schema Form制作多个文件输入,然后,我尝试了multiple的例子文件输入来自本网站react-jsonschema-form,但多个文件输入不需要多个文件,它需要只有一个文件

这是来自 react-jsonschema-form多个文件输入的 JSON Schema:


  "title": "Files",
  "type": "object",
  "properties": 
    "files": 
      "type": "array",
      "title": "Multiple files",
      "items": 
        "type": "string",
        "format": "data-url"
      
    ,
  

有什么问题吗?或者有什么方法可以输入多个文件?

【问题讨论】:

【参考方案1】:

我使用您问题中指示的链接对其进行了测试,一切正常。关闭properties 后删除逗号。在 JSON 中,这被认为是错误


  "title": "Files",
  "type": "object",
  "properties": 
    "files": 
      "type": "array",
      "title": "Multiple files",
      "items": 
        "type": "string",
        "format": "data-url"
      
    
  

【讨论】:

根据您的建议,我尝试了 react-jsonschema-form 网站上的示例,“Chrome”和“Firefox”都删除了“逗号”,但不幸的是它仍然只需要一个文件。跨度> 您确定您添加的文件正确吗?您需要按住 Ctrl 并选择文件而不释放 Ctrl )因为您的屏幕截图显示了“选择文件”字样,这表明启用了多个。 不,即使单击“选择文件”按钮按住“Ctrl”,它仍然不起作用。我再次尝试使用“Chrome”和“Firefox”。 现在,我了解了如何通过示例选择多个文件。我曾经一次又一次地通过单击“选择文件”来选择一个文件。这就是为什么我不能选择多个文件。要选择多个文件,我需要按住“Ctrl”键选择多个文件,单击“选择文件”。谢谢。 @Kai 是的,您也可以通过按住 SHIFT 并选择要开始的文件和要结束的文件来选择文件范围。【参考方案2】:

您可以使用 JSON 架构选择多个文件:


  "title": "Files",
  "type": "object",
  "properties": 
    "files": 
      "type": "array",
      "title": "Multiple files",
      "items": 
        "type": "string",
        "format": "data-url"
      
    ,
  

首先,点击“选择文件”

其次,按住“Ctrl”“Shift”,然后,选择多个文件。 *在完成选择之前不要松开 "Ctrl""Shift"。在下面的示例中,我选择了 "clover.jpg""rosemary.jpg""sunflower.jpg"

最后,您可以选择“选择文件”下列出的3个文件:

【讨论】:

【参考方案3】:

还有另一种方法可以使用此 JSON Schema 选择多个文件:


  "title": "Files",
  "type": "object",
  "properties": 
    "files": 
      "type": "array",
      "title": "Multiple files",
      "items": 
        "properties": 
          "file": 
            "type": "string",
            "title": "File",
            "format": "data-url",
          
        
      
    
  

点击“+”添加单文件输入,“?”删除单文件输入:

【讨论】:

以上是关于使用 JSON Schema Form (Retool) 输入多个文件的主要内容,如果未能解决你的问题,请参考以下文章

使用 kafka-json-schema-console-consumer 使用 JSON 消息时打印密钥

使用 z-schema 编译 JSON Schema Draft-03

使用 GraphiQL 或 GraphQL 端点生成 schema.json

Json Schema

使用 JSON-Schema 定义模式并使用 Mongoose?

如何在 JSON Schema 中使用来自外部文件的定义?