react 实现confirm

6 篇文章 0 订阅
2 篇文章 0 订阅

原博客忘记哪个了,再次感谢原作者。原文是js,我这是用的React,原理就是对hide属性的控制


html,body {
  margin: 0;
  padding: 0;
  font-family: "Microsoft YaHei";
}
.wrap-dialog {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-size: 16px;
  text-align: center;
  z-index: 999;
}
.dialog {
  position: relative;
  margin: 15% auto;
  width: 300px;
  background-color: #FFFFFF;
}
.dialog .dialog-header {
  height: 20px;
  padding: 10px;
  background-color: lightskyblue;
}
.dialog .dialog-body {
  height: 30px;
  padding: 20px;
}
.dialog .dialog-footer {       padding: 8px;
  background-color: whitesmoke;
}
.btn {
  width: 70px;
  padding: 2px;
}
.hide {
  display: none;
}
.ml50 {
  margin-left: 50px;
}

import React from 'react';
import './App.css';

class App extends React.Component
{
  constructor()
  {
    super();
    this.state=
        {
          confirmHidden: "hide"
        };
    this.remove = this.remove.bind(this);
    this.confirmClick = this.confirmClick.bind(this);
  }

  remove()
  {
    console.log("remove");

    this.setState({ confirmHidden: "" })
  }

  confirmClick(value)
  {
    // 根据value值执行对应操作
    if(value === "ensure")
    {
      
    }
    else
    {
      
    }
  }

  render()
  {
    return <div style={ { padding: "0", margin: "0", width: "100%"} }>
      <input type="button" value="删除" className="btn ml50" id="remove" onClick={ ()=> this.remove() }/>
        <div className={`wrap-dialog ${ this.state.confirmHidden }`}>
          <div className="dialog">
            <div className="dialog-header">
              <span className="dialog-title">删除确认</span>
            </div>
            <div className="dialog-body">
              <span className="dialog-message">你确认删除此条信息?</span>
            </div>
            <div className="dialog-footer">
              <input type="button" className="btn" id="confirm" onClick={ ()=>this.confirmClick("ensure") } value="确认"/>
              <input type="button" className="btn ml50" id="cancel" onClick={ ()=>this.confirmClick("cancel") } value="取消"/>
            </div>
          </div>
        </div>
    </div>
  }
}

export default App;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的 React 登录注册代码示例: ```jsx import React, { useState } from 'react'; const Login = () => { const [email, setEmail] = useState(''); const [password, setPassword] = useState(''); const handleEmailChange = (event) => { setEmail(event.target.value); }; const handlePasswordChange = (event) => { setPassword(event.target.value); }; const handleSubmit = (event) => { event.preventDefault(); console.log(`Email: ${email}, Password: ${password}`); }; return ( <form onSubmit={handleSubmit}> <label> Email: <input type="email" value={email} onChange={handleEmailChange} /> </label> <label> Password: <input type="password" value={password} onChange={handlePasswordChange} /> </label> <button type="submit">Login</button> </form> ); }; const Register = () => { const [email, setEmail] = useState(''); const [password, setPassword] = useState(''); const [confirmPassword, setConfirmPassword] = useState(''); const handleEmailChange = (event) => { setEmail(event.target.value); }; const handlePasswordChange = (event) => { setPassword(event.target.value); }; const handleConfirmPasswordChange = (event) => { setConfirmPassword(event.target.value); }; const handleSubmit = (event) => { event.preventDefault(); console.log(`Email: ${email}, Password: ${password}, Confirm Password: ${confirmPassword}`); }; return ( <form onSubmit={handleSubmit}> <label> Email: <input type="email" value={email} onChange={handleEmailChange} /> </label> <label> Password: <input type="password" value={password} onChange={handlePasswordChange} /> </label> <label> Confirm Password: <input type="password" value={confirmPassword} onChange={handleConfirmPasswordChange} /> </label> <button type="submit">Register</button> </form> ); }; const App = () => { return ( <div> <h1>Login</h1> <Login /> <h1>Register</h1> <Register /> </div> ); }; export default App; ``` 这个示例包含两个组件:`Login` 和 `Register`。每个组件都有一个表单,用户可以输入他们的电子邮件和密码。`Login` 组件只有一个密码输入框,而 `Register` 组件有两个密码输入框,以确保用户输入的密码正确。当用户提交表单时,表单数据将被打印到控制台中。 请注意,这只是一个简单的示例,实际的登录注册代码需要更多的逻辑和验证。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值