gpt4 book ai didi

javascript - 在 React JS 中处理 If 条件中的状态值

转载 作者:行者123 更新时间:2023-12-03 03:49:23 25 4
gpt4 key购买 nike

我几天前开始使用 Semantic UI,最近遇到了一个尚未找到答案的问题。如何在 if 条件下处理类的状态值?

我在这里想做的是制作一个侧边菜单,仅当用户单击按钮时才会显示,并在用户单击显示菜单之外时隐藏。类似于 Semantic 的侧边栏,但没有整个 .pusher 组件。

所以基本上我需要一个 if 条件来检查“可见”状态值,如果它等于“无”,则将其更改为“阻止”(启用显示),反之亦然。到目前为止我编码如下:

import React, { Component } from 'react'
import { Input, Label, Menu } from 'semantic-ui-react'

export class SidebarMenuEX extends Component {

constructor(props)
{
super(props);
this.state = {activeItem: 'inbox', visible: 'none'};
}

handleItemClick = (e, { name }) => this.setState({ activeItem: name })

handleDisplay(){
if {this.state[visible]} = 'none'
this.setState({visible = 'block'})
}

render() {
const { activeItem } = this.state.activeItem
const { visible } = this.state.visible

return (
<Menu vertical display = 'none'>
<Menu.Item name='inbox' active={activeItem === 'inbox'} onClick={this.handleItemClick}>
<Label color='teal'>1</Label>
Inbox
</Menu.Item>

<Menu.Item name='spam' active={activeItem === 'spam'} onClick={this.handleItemClick}>
<Label>51</Label>
Spam
</Menu.Item>

<Menu.Item name='updates' active={activeItem === 'updates'} onClick={this.handleItemClick}>
<Label>1</Label>
Updates
</Menu.Item>
<Menu.Item>
<Input icon='search' placeholder='Search mail...' />
</Menu.Item>
</Menu>
)
}

显然我的handleDisplay()方法不起作用,但我想了解为什么If条件无法识别this.state.visiblethis.state[visible] 有效(它表示 [js] ':' 预期)。有谁知道解决这个问题的方法?谢谢!

D.

最佳答案

有效的 JS 语法的答案是:

if (this.state.visible === 'none') {
this.setState({visible: 'block'});
}

关于javascript - 在 React JS 中处理 If 条件中的状态值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45232761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com