【问题标题】:How can I get the user Inputs and print it in a single row?如何获取用户输入并将其打印在一行中?
【发布时间】:2023-03-19 01:45:01
【问题描述】:

我想添加一个带有 (名称颜色和价格) 的项目,但是当我尝试时它会像这样添加它们。它应该创建一行,例如 PHONE - Color: 0 - Price: 1000,而不是显示三个内容。我试图制作一种方法,但它也不起作用。我如何编写代码才能将这些输入放在一行中。

</div>
{props.options.length === 0 && <p className="widget__message">Please add a Product to get started!</p>}
{
  props.options.map((option, index) => (
    <Option
      key={option}
      optionText={option}      
      count= {index + 1}
      handleDeleteOption={props.handleDeleteOption}
    />     
  ))     
}
{
  props.colors.map((color, index) => (
    <Option        
      colorText = {color}
      count= {index + 1}
      handleDeleteOption={props.handleDeleteOption}
    />
  ))     
}

{
  props.prices.map((price, index) => (
    <Option       
      priceText = {price}          
      count= {index + 1}
      handleDeleteOption={props.handleDeleteOption}
    />
  ))  
}

导出默认选项;

【问题讨论】:

  • 老实说,从你的问题来看,我几乎不知道你想要什么。您能否清楚地展示或解释与您现有的相比,您正在尝试做什么?
  • @zfrisch 我想通过文本域获取用户的输入。我可以获得输入,它将添加的产品颜色价格显示为 3 行。它应该是添加项目的单行。您可以在github.com/ErkAydogan/React 获取项目并试用
  • 哦,我明白了。您的代码在哪里显示用户单击添加选项时发生的情况?
  • 是AddOption.js @zfrisch处的handleAddOption函数

标签: javascript reactjs react-native input user-input


【解决方案1】:

嗯,发生的事情是您正在打印整个数组,因此您首先获得了一种类型的所有类型,然后是其他所有类型,而不是获得每个类型的期望结果。

一种方法可以是:

</div>
{props.options.length === 0 && <p className="widget__message">Please add a Product to get started!</p>}
{
  props.options.map((option, index) => (
<div key={option}>
    <Option
      optionText={option}      
      count= {index + 1}
      handleDeleteOption={props.handleDeleteOption}
    />
    <Option       
      colorText = {props.colors[index]}
      count= {index + 1}
      handleDeleteOption={props.handleDeleteOption}
    />
   <Option       
      priceText = {props.prices[index]}          
      count= {index + 1}
      handleDeleteOption={props.handleDeleteOption}
    />
</div>
  )) 
}
</div>

我是在写作的时候做的,所以也许我忘记了一些括号或括号,但我的想法是只有一个映射,并且在该映射内部每次迭代都会获得一个元素。

如果数组有一个具有 3 个属性的对象,每个类型(选项、颜色、价格)一个,然后将 object.option、object.color 和 object.price 传递给每个 Option 组件,这可能会更好。

在这种方法中,我也没有考虑到 props.prices[index] 或 props.colores[index] 可能不存在,我不知道这是否会发生,这只是为了展示这个概念。

【讨论】:

  • 这个概念是正确的,但我对 OPs 代码中的选项标签感到困惑。我不确定这是否会影响输出或输入。
猜你喜欢
  • 1970-01-01
  • 2021-12-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-14
  • 1970-01-01
  • 1970-01-01
  • 2018-07-29
相关资源
最近更新 更多