【问题标题】:How do I pass dropdown values via JSON record response to react UI?如何通过 JSON 记录响应传递下拉值以响应 UI?
【发布时间】:2019-07-30 00:47:49
【问题描述】:

我需要获得有关构建 JSON 响应的首选方法的反馈,以便不仅提供数据元素,还控制 UI 元素(特别是选择框)

我目前正在设计一套 REST 服务来支持新的应用程序。所有数据都将由 REST 服务提供,前端将是 Spring-Boot/REACT.js。

我们希望所有业务逻辑都在数据层(Spring-Boot 微服务)进行管理。因此,所有“选择选项”(下拉菜单)都将由 Java 服务通过 RESTful 服务提供的数据驱动。

我只是在寻找有关这些选项中的任何一个的反馈(或者,如果您有更喜欢的选项,请随意。

[
  {
    "id": 1,
    "first_name": "Curry",
    "last_name": "Aburrow",
    "email": "caburrow0@gnu.org",
    "gender": "Male",
    "gender_options": {
        "0":"Male",
        "1":"Female"
        }
    "department": "Sales"
    "department_options": {
        "0":"Sales",
        "1":"Legal",
        "2":"HR",
        "3":"Finance",
        "4":"Operations"
        }
  },
  {
    "id": 2,
    "first_name": "Joachim",
    "last_name": "Lotte",
    "email": "jlotte1@webnode.com",
    "gender": "Male",
    "gender_options": {
        "0":"Male",
        "1":"Female"
        }
    "department": "Finance"
    "department_options": {
        "0":"Sales",
        "1":"Legal",
        "2":"HR",
        "3":"Finance",
        "4":"Operations"
        }
  }
]

或者这个

[
  {
    "id": 1,
    "first_name": "Curry",
    "last_name": "Aburrow",
    "email": "caburrow0@gnu.org",
    "gender": {
        "selected":"Male",
        "options": {
            "0":"Male",
            "1":"Female"
            }
    "department": {
        "selected":"Sales",
        "options": {
        "0":"Sales",
        "1":"Legal",
        "2":"HR",
        "3":"Finance",
        "4":"Operations"
        }
  },
  {
    "id": 2,
    "first_name": "Joachim",
    "last_name": "Lotte",
    "email": "jlotte1@webnode.com",
    "gender": {
        "selected":"Female",
        "options": {
            "0":"Male",
            "1":"Female"
            }
    "department": {
        "selected":"Finance",
        "options": {
        "0":"Sales",
        "1":"Legal",
        "2":"HR",
        "3":"Finance",
        "4":"Operations"
        }
  }
]

选项 1 是基本 json,在它自己的元素中提供选择选项数组。 选项 2 是嵌套数组。

两者都不是太复杂,只是寻找更高效的方法。

【问题讨论】:

    标签: json reactjs rest spring-boot dropdown


    【解决方案1】:

    我觉得部门选项和性别选项首先不应该是对象的一部分。这些应该来自一个单独的 json,它可以是静态的,也可以由某些 CMS 配置。所以你应该对这个没问题:

    [{
        "id": 1,
        "first_name": "Curry",
        "last_name": "Aburrow",
        "email": "caburrow0@gnu.org",
        "gender": "Male",
        "department": "Sales"
      },
      {
        "id": 2,
        "first_name": "Joachim",
        "last_name": "Lotte",
        "email": "jlotte1@webnode.com",
        "gender": "Male",
        "department": "Finance"
      }
    ]
    

    此外,您的性别选项和部门选项并不是真正的数组。它们是对象。您可以将它们设为字符串数组或更好,将它们设为对象数组,以便它们也可以具有类似 displayvalue 的字段,然后可以使用。例如:

    对于性别选项:

    [{
        display: "Male",
        value: "MALE"
      },
      {
        display: "Female",
        value: "FEMALE"
      }
    ]
    

    对于部门选项:

    [{
        id: 1,
        display: "Sales",
        value: "SALES"
      },
      {
        id: 2,
        display: "Legal",
        value: "LEGAL"
      },
      {
        id: 3,
        display: "HR",
        value: "HR"
      },
      {
        id: 4,
        display: "Finance",
        value: "FINANCE"
      },
      {
        id: 5,
        display: "Operations",
        value: "OPERATIONS"
      }
    ]
    

    【讨论】:

    • 我的错,是的,它们是对象,应该是数组。出于两个原因,LOV 必须是数据响应的一部分。 1:我们正在构建一个基于服务的应用程序,需要感觉非常轻量级。网络交易(数据调用)将是我们最繁重的功能。 2:我们所有的业务逻辑都必须驻留在服务层。因此,不幸的是,必须在响应中表示“条件”LOV。不确定嵌套元素还是单独元素效果最好。
    猜你喜欢
    • 2014-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-17
    • 1970-01-01
    • 2021-03-28
    相关资源
    最近更新 更多