【问题标题】:How to extend div element through onClick in ReactjsReactjs中如何通过onClick扩展div元素
【发布时间】:2021-05-06 07:29:14
【问题描述】:

我是 Reactjs 新手,对常规 html/js 有更多经验,但我正在从事的项目需要使用 Reactjs。

如果用户想要添加其他设置,我希望允许他们单击按钮。我需要帮助来实现一个按钮,当单击该按钮时,它会扩展现有的 div 并向用户显示另外 2 个选项(度量和阈值输入框)。 即如果按钮被点击3次,页面上会出现6个输入框。

目前,一旦单击按钮,函数调用就会在触发 addItem() 时工作​​。但是,我不确定如何实现代码以向用户显示更多选项。

到目前为止我的代码:

addItem() {
     
};

...

return (
...
<Form.Item name="frequency" label="Metric">
</Form.Item>
<Form.Item name="amount" label="Threshold Score">
   <Slider marks={marks} />
   <button onClick={this.addItem()} {...formItemLayout} labelAlign="right" type="submit" className="btn 
    btn-success px-5" >
       Add Metric
   </button>    
</Form.Item>
)

这是网页的快照,如果用户点击“添加指标”,则页面应该被扩展,并且应该出现另一个指标和阈值分数的输入框。

【问题讨论】:

    标签: javascript html reactjs react-router onclick


    【解决方案1】:

    您在 onClick 事件中直接调用该函数。这就是为什么它不起作用。您可以通过两种方式调用事件中的函数。例如onClick={this.addItem}或onClick={()=&gt;this.addItem()}

    【讨论】:

    • 我现在实际上还没有任何代码,在我的 addItem() 函数中,因为我不确定如何实现它。
    【解决方案2】:

    您可以通过 2 种方式触发事件。您需要在 onclick 事件上调用直接函数。第一个 onClick={this.addItem} 和 seconf 一个是 onClick={(event) => this.addItem(event)}。

    class Demo extends Component {
        constructor(props) {
            super(props);
            this.state = {}
        }
            
        addItem() {
            console.log('trigger);
        };
        
        render() {
                return (
                    <Form.Item name="frequency" label="Metric">
                    </Form.Item>
                    <Form.Item name="amount" label="Threshold Score">
                         <Slider marks={marks} />
                         <button onClick={this.addItem} {...formItemLayout} labelAlign="right" type="submit" className="btn 
                            btn-success px-5" >
                                 Add Metric
                         </button>    
                    </Form.Item>
                    )
            }
    } 
    

    【讨论】:

    • 我目前有,并且正在调用 addItem,因此控制台日志显示了正确的单词。抱歉,但我认为我的问题措辞有点错误,我现在对其进行了编辑,说我需要帮助来实现代码,以便在单击按钮后向用户显示更多选项。即在实现功能时需要帮助
    • 你能分享一下你现在遇到的错误吗
    • 请更改按钮类型提交到按钮。 type="按钮"
    • 确定我会更改按钮类型。我现在没有收到任何错误,我只是不知道单击按钮时如何显示更多选项
    • 如果它有效,请给我投票,以便帮助其他社区成员。
    猜你喜欢
    • 1970-01-01
    • 2012-04-22
    • 2015-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-22
    • 1970-01-01
    相关资源
    最近更新 更多