import { MehOutlined } from '@ant-design/icons' import { Popover } from 'antd' import style from './index.less' import React, { useCallback, useState } from 'react' const arr1 = [ "๐Ÿ˜„", "๐Ÿ˜Š", "๐Ÿ˜ƒ", "๐Ÿ˜‰", "๐Ÿ˜", "๐Ÿ˜˜", "๐Ÿ˜š", "๐Ÿ˜ณ", "๐Ÿ˜", "๐Ÿ˜Œ", "๐Ÿ˜œ", "๐Ÿ˜", "๐Ÿ˜’", "๐Ÿ˜", "๐Ÿ˜“", "๐Ÿ˜”", "๐Ÿ˜ž", "๐Ÿ˜–", "๐Ÿ˜ฅ", "๐Ÿ˜ฐ", "๐Ÿ˜จ", "๐Ÿ˜ฃ", "๐Ÿ˜ข", "๐Ÿ˜ญ", "๐Ÿ˜‚", "๐Ÿ˜ฒ", "๐Ÿ˜ฑ", "๐Ÿ˜ ", "๐Ÿ˜ก", "๐Ÿ˜ช", "๐Ÿ˜ท", "๐Ÿ‘ฟ", "๐Ÿ‘ฝ", "โค๏ธ", "๐Ÿ’”", "๐Ÿ’˜", "โœจ", "๐ŸŒŸ", "โ•", "โ”", "๐Ÿ’ค", "๐Ÿ’ฆ", "๐ŸŽต", "๐Ÿ”ฅ", "๐Ÿ’ฉ", "๐Ÿ‘", "๐Ÿ‘Ž", "๐Ÿ‘Š", "โœŒ๏ธ", "๐Ÿ‘†", "๐Ÿ‘‡", "๐Ÿ‘‰", "๐Ÿ‘ˆ", "โ˜๏ธ" ] const arr2 = [ "๐Ÿ’ช", "๐Ÿ’", "๐Ÿ’‘", "๐Ÿ‘ฆ", "๐Ÿ‘ง", "๐Ÿ‘ฉ", "๐Ÿ‘จ", "๐Ÿ‘ผ", "๐Ÿ’€", "๐Ÿ‘„", "โ˜€", "โ˜”", "โ˜", "โ›„", "๐ŸŒ™", "โšก", "๐ŸŒŠ", "๐Ÿฑ", "๐Ÿถ", "๐Ÿญ", "๐Ÿน", "๐Ÿฐ", "๐Ÿบ", "๐Ÿธ", "๐Ÿฏ", "๐Ÿจ", "๐Ÿป", "๐Ÿท", "๐Ÿฎ", "๐Ÿ—", "๐Ÿต", "๐Ÿด", "๐Ÿ", "๐Ÿฆ", "๐Ÿ”", "๐Ÿง", "๐Ÿ›", "๐Ÿ™", "๐Ÿ ", "๐Ÿณ", "๐Ÿฌ", "๐ŸŒน", "๐ŸŒบ", "๐ŸŒด", "๐ŸŒต", "๐Ÿ’", "๐ŸŽƒ", "๐Ÿ‘ป", "๐ŸŽ…", "๐ŸŽ„", "๐ŸŽ", "๐Ÿ””", "๐ŸŽ‰", "๐ŸŽˆ" ] const arr3 = [ "๐Ÿ’ฟ", "๐Ÿ“ท", "๐ŸŽฅ", "๐Ÿ’ป", "๐Ÿ“บ", "โ˜Ž", "๐Ÿ”“", "๐Ÿ”’", "๐Ÿ”‘", "๐Ÿ”จ", "๐Ÿ’ก", "๐Ÿ“ซ", "๐Ÿ›€", "๐Ÿ’ฐ", "๐Ÿ’ฃ", "๐Ÿ”ซ", "๐Ÿ’Š", "๐Ÿˆ", "๐Ÿ€", "โšฝ", "โšพ", "โ›ณ", "๐Ÿ†", "๐Ÿ‘พ", "๐ŸŽค", "๐ŸŽธ", "๐Ÿ‘™", "๐Ÿ‘‘", "๐ŸŒ‚", "๐Ÿ‘œ", "๐Ÿ’„", "๐Ÿ’", "๐Ÿ’Ž", "โ˜•", "๐Ÿบ", "๐Ÿป", "๐Ÿธ", "๐Ÿ”", "๐ŸŸ", "๐Ÿ", "๐Ÿฃ", "๐Ÿœ", "๐Ÿณ", "๐Ÿฆ", "๐ŸŽ‚", "๐ŸŽ", "โœˆ", "๐Ÿš€", "๐Ÿšฒ", "๐Ÿš„", "โš ", "๐Ÿ", "๐Ÿšน", "๐Ÿšบ" ] const arr4 = ["โญ•", "โŒ", "ยฉ", "ยฎ", "โ„ข"] type Props = { getStr: (str: string, range: Range) => void//ๅ›ž่ฐƒไผ ๅ›ž้€‰ไธญ่กจๆƒ…ๅ’Œๆœ€ๅŽๅ…‰ๆ ‡ไฝ็ฝฎ range: Range//ๆ–‡ๆœฌๅ…‰ๆ ‡่Š‚็‚น } function Expression(props: Props) { const [eq, setEq] = useState(0)//ๅฝ“ๅ‰้กต const [left, setLeft] = useState(0)//ๅ็งป const [isShow, setIsShow] = useState(false)//ๅผน็ช— //ๆ˜พ็คบๅ…ณ้—ญๅผน็ช— const exit = useCallback(() => { setIsShow(!isShow) }, [isShow]) //็‚นๅ‡ป่กจๆƒ… const handelClick = useCallback((str: string) => { props.getStr(str, props.range) setIsShow(false) }, [props.range]) //็‚นๅ‡ป็ฟป้กต const handelAction = useCallback((eq: number) => { setEq(eq) setLeft(eq * 400) }, []) return
{ [arr1, arr2, arr3, arr4].map((item: string[], index: number) => { return
{ item.map((em: string, index: number) => { return handelClick(em)}>{em} }) }
}) }
{ [0, 1, 2, 3].map((item) => { return handelAction(item)} /> }) }
} trigger="click" open={isShow} onOpenChange={exit} > } export default Expression