首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何隐藏primereact日历组件

如何隐藏primereact日历组件
EN

Stack Overflow用户
提问于 2022-08-16 12:43:40
回答 1查看 214关注 0票数 2

是否有一种使用自定义按钮隐藏日历的方法?

代码语言:javascript
复制
<Calendar onHide={handleCalendarHide} />;

现在我只能隐藏日历,只点击日历外部的这个triger onHide事件,但是我想在选择日期时隐藏日历,然后单击apply按钮。

有一种方法可以触发函数来隐藏这个日历吗?

EN

回答 1

Stack Overflow用户

发布于 2022-08-16 13:09:31

试试下面的代码。它在输入元素旁边显示一个内置按钮,除了获取焦点的输入元素之外,该按钮还可以显示/隐藏日历:

代码语言:javascript
复制
const [date3, setDate3] = useState(null);

<Calendar id="icon" value={date3} onChange={(e) => setDate3(e.value)} showIcon />

直接从组件页面获取:https://www.primefaces.org/primereact/calendar/

但是,如果您确实需要一个自定义按钮来显示/隐藏日历覆盖,请尝试如下:

代码语言:javascript
复制
const [date3, setDate3] = useState();
const [isVisible, setIsVisible] = useState(false);

const handleVisibility = (e) => {
  setIsVisible(!isVisible);
};

const handleVisibleChange = (e) => {
  console.log(e);
};

<Button label="Custom Button" onClick={handleVisibility} />
<Calendar
    id="icon"
    value={date3}
    onChange={(e) => setDate3(e.value)}
    showOnFocus={false}
    visible={isVisible}
    onVisibleChange={handleVisibleChange}
  />

演示:https://f8n50l.csb.app/

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

https://stackoverflow.com/questions/73374205

复制
相关文章

相似问题

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