Javascript 如何使用antd在react中显示空div或null?
点击按钮几秒钟后,我从Javascript 如何使用antd在react中显示空div或null?,javascript,reactjs,antd,Javascript,Reactjs,Antd,点击按钮几秒钟后,我从服务器获取数据。点击按钮几秒钟后,它会显示一些白卡 这是我的密码 这行有问题 const menu = () => { return state.length > 0 ? <Menu>{options()}</Menu> : <Menu />; }; const菜单=()=>{ 返回state.length>0?{options()}:; }; 我这样试过,但没有成功 const menu = () =&g
服务器获取数据。点击按钮几秒钟后,它会显示一些白卡
这是我的密码
这行有问题
const menu = () => {
return state.length > 0 ? <Menu>{options()}</Menu> : <Menu />;
};
const菜单=()=>{
返回state.length>0?{options()}:;
};
我这样试过,但没有成功
const menu = () => {
return state.length > 0 ? <Menu>{options()}</Menu> : <div />;
};
const菜单=()=>{
返回state.length>0?{options()}:;
};
API链接
您可以使用片段()
const选项=(
{state.map((i,索引)=>(
))};
)
常量菜单=()=>{
返回状态.length>0?选项:;
};
编辑:在看到你的沙盒之后。一切似乎都错了。我会回来找你的
以下是我修复您的代码的尝试:
const App = () => {
const [state, setState] = useState([]);
const options = (
<Menu>
{state.map((i, index) => (
<Menu.Item key={index}>
<a href="http://www.alipay.com/">{i}</a>
</Menu.Item>
))}
</Menu>
);
return (
<div>
<Dropdown.Button
disabled={!(Array.isArray(state) && state.length)}
overlay={options}
trigger={["click"]}
icon={<Icon type="down" />}
>
Click me
</Dropdown.Button>
<div style={{ marginTop: 10 }}>
<button onClick={() => setState(["Item no. 1", "Item no. 2"])}>
Add items to list
</button>
<button onClick={() => setState([])}>Remove items in list</button>
</div>
</div>
);
};
const-App=()=>{
const[state,setState]=useState([]);
常量选项=(
{state.map((i,索引)=>(
))}
);
返回(
点击我
设置状态([“第1项”、“第2项”])}>
将项目添加到列表中
setState([])}>删除列表中的项目
);
};
其中disabled={!(Array.isArray(state)&&state.length)}
是api本身的道具,如果列表为空,它将禁用组件
通过阅读文档,我也做了一些调整()
属性仅接受菜单
组件
覆盖下拉菜单|()=>菜单
因此,您应该呈现一些加载指示器:
return state.length > 0 ? (
<Menu>{options()}</Menu>
) : (
<Menu>
<Menu.Item disabled>
<Spin />
</Menu.Item>
</Menu>
);
};
返回状态.length>0?(
{options()}
) : (
);
};
return state.length > 0 ? (
<Menu>{options()}</Menu>
) : (
<Menu>
<Menu.Item disabled>
<Spin />
</Menu.Item>
</Menu>
);
};