首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更新React Hook对象元素

更新React Hook对象元素
EN

Stack Overflow用户
提问于 2020-07-25 18:35:19
回答 1查看 29关注 0票数 1

我有一个下拉列表,用户可以在其中选择他们想要设置待办事项的日期。基于我将添加true的日期。

通过选择字段,例如Monday,如果用户选择了afternoon,还选择了evening,则不得影响下午字段。这有没有可能做到。请帮帮我。

这是我的代码

代码语言:javascript
复制
const ToDo = () =>{
    const [selectedCat, setSelected] = useState('')
    const [mon, setMon] = useState([{
        'morning':[],
        'afternoon':[],
        'evening':[]
    }])

    const days = [
        {itemName: "Select a day"},{itemName: "Monday"},
        {itemName: "Tuesday"},
        {itemName: "Wednesday"},{itemName: "Thursday"},
        {itemName: "Friday"},{itemName: "Saturday"},
        {itemName: "Sunday"}
    ]

    const whichDay = () =>{
        switch(selectedCat){
            case selectedCat === 'Monday':
                setMon({
                    "morning": true
                })
            default:
                break
        }
    }
    return(
        <Picker
            mode="dropdown"
            selectedValue={selectedCat}
            onValueChange={(itemValue, itemIndex) => setSelected(itemValue) && whichDay()}
        >
            {category.map((item, index) => (
                <Picker.Item
                    label={item.itemName}
                    value={item.itemName}
                    index={index}
                />))}
        </Picker>
    )

}
EN

回答 1

Stack Overflow用户

发布于 2020-07-25 18:46:34

代码语言:javascript
复制
const ToDo = () =>{
    const [selectedCat, setSelected] = useState('')
    const [mon, setMon] = useState([{
        'morning':[],
        'afternoon':[],
        'evening':[]
    }])

    const days = [
        {itemName: "Select a day"},{itemName: "Monday"},
        {itemName: "Tuesday"},
        {itemName: "Wednesday"},{itemName: "Thursday"},
        {itemName: "Friday"},{itemName: "Saturday"},
        {itemName: "Sunday"}
    ]

    const whichDay = () =>{
        switch(selectedCat){
            case selectedCat === 'Monday':
                setMon((aAlreadySelectedState)=>{return {
                    "morning": true,
                    ...aAlreadySelectedState
                }})
            default:
                break
        }
    }
    return(
        <Picker
            mode="dropdown"
            selectedValue={selectedCat}
            onValueChange={(itemValue, itemIndex) => setSelected(itemValue) && whichDay()}
        >
            {category.map((item, index) => (
                <Picker.Item
                    label={item.itemName}
                    value={item.itemName}
                    index={index}
                />))}
        </Picker>
    )

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63087294

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档