gpt4 book ai didi

javascript - Gatsby 在单击按钮时打开模态窗口

转载 作者:行者123 更新时间:2023-11-29 17:41:25 28 4
gpt4 key购买 nike

我正在一个关于使用 Gatsby v2 (Reactjs) 进行捐赠的网站上工作,我需要一个示例,例如使用 Gatsby 或 ReactJS 在按钮捐赠点击上打开模式窗口。我在互联网上搜索,但一无所获。

提前致谢。

最佳答案

这是一个使用 react-modal 的简单 (Gatsby) 页面举个例子。在此示例中,我替换了 Gatsby v2 的新入门站点中的默认 IndexPage,您可以通过 CLI 生成它。

import React, { Component } from 'react'
import ReactModal from 'react-modal'
import { Link } from 'gatsby'

import Layout from '../components/layout'

ReactModal.setAppElement('#main')

class IndexPage extends Component {
constructor(props) {
super(props)
this.state = {
isModalOpen: false,
}
}
handleModalOpen = event => {
// console.log('handleModalOpen: ', event);
this.setState({ isModalOpen: true })
}

handleModalClose = event => {
// console.log('handleModalOpen: ', event);
this.setState({ isModalOpen: false })
}

render() {
return (
<Layout>
<div id="main">
<h1>Hi people</h1>
<p>Welcome to your new Gatsby site.</p>
<p>Now go build something great.</p>

<Link to="#" onClick={this.handleModalOpen}>
Donate Now
</Link>
</div>
<ReactModal
isOpen={this.state.isModalOpen}
onRequestClose={this.handleModalClose}
contentLabel="Example Modal In Gatsby"
>
<h2>Donate</h2>
<button onClick={this.handleModalClose}>Close Modal</button>
</ReactModal>
</Layout>
)
}
}

export default IndexPage

这应该让你继续。最好阅读有关如何扩展此示例的信息 using react-modal here (或使用替代方法)。

关于javascript - Gatsby 在单击按钮时打开模态窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52879362/

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