Test.tsx 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import WordEditor from "@/components/WordEditor/WordEditor";
  2. import styles from "./Test.module.scss"
  3. import useApis from "@/apis";
  4. import {useNavigate} from "react-router";
  5. import {useState} from "react";
  6. import {Modal} from "antd";
  7. const Test = () => {
  8. const apis = useApis()
  9. const nav = useNavigate()
  10. const [isModified, setIsModified] = useState(false)
  11. const [isModalOpen, setIsModalOpen] = useState(false);
  12. const showModal = () => {
  13. setIsModalOpen(true);
  14. };
  15. const handleOk = () => {
  16. setIsModalOpen(false);
  17. };
  18. const handleCancel = () => {
  19. setIsModalOpen(false);
  20. };
  21. const handleClick = () => {
  22. if (isModified) showModal()
  23. else nav("/")
  24. }
  25. const handleValueChange = (state: boolean)=> {
  26. setIsModified(state)
  27. }
  28. return (
  29. <div className={styles.container}>
  30. <div className={styles["editor-box"]}>
  31. <WordEditor onValueChange={handleValueChange}></WordEditor>
  32. </div>
  33. <button onClick={handleClick}>提交</button>
  34. <Modal title="Basic Modal" open={isModalOpen} onOk={handleOk} onCancel={handleCancel}>
  35. <p>Some contents...</p>
  36. <p>Some contents...</p>
  37. <p>Some contents...</p>
  38. </Modal>
  39. </div>
  40. )
  41. }
  42. export default Test;