当前位置: 首页 > news >正文

学做网站 书怎么做淘宝优惠卷网站

学做网站 书,怎么做淘宝优惠卷网站,网络推广费用预算表,全网最便宜的购物软件需求#xff1a; 左上侧#xff1a;状态左下侧#xff1a;棋盘#xff0c;保证胜利就结束 和 下过来的不能在下右侧#xff1a;“时光机”,保证可以回顾#xff0c;索引 语法#xff1a; 父子之间属性传递#xff08;props#xff09;子父组件传递#xff08;写法上 左上侧状态左下侧棋盘保证胜利就结束 和 下过来的不能在下右侧“时光机”,保证可以回顾索引 语法 父子之间属性传递props子父组件传递写法上回调函数若与前者相同会出现无限渲染 //父组件中声明Square value{squares[0]} onSquareClick{() handleClick(0)} / //子组件接收或发射function Square({ value, onSquareClick }) {return (button classNamesquare onClick{onSquareClick}{value}/button); } Idea 时光机 不改动原数组slice()拷贝原数组[...history,squares]存各个时间数据若与每一步索引有关[...history.slice(0, currentMove 1), nextSquares] import { useState } from react;function Square({ value, onSquareClick }) {return (button classNamesquare onClick{onSquareClick}{value}/button); }function Board({ xIsNext, squares, onPlay }) {function handleClick(i) {if (calculateWinner(squares) || squares[i]) {return;}const nextSquares squares.slice();if (xIsNext) {nextSquares[i] X;} else {nextSquares[i] O;}onPlay(nextSquares);}const winner calculateWinner(squares);let status;if (winner) {status Winner: winner;} else {status Next player: (xIsNext ? X : O);}return (div classNamestatus{status}/divdiv classNameboard-rowSquare value{squares[0]} onSquareClick{() handleClick(0)} /Square value{squares[1]} onSquareClick{() handleClick(1)} /Square value{squares[2]} onSquareClick{() handleClick(2)} //divdiv classNameboard-rowSquare value{squares[3]} onSquareClick{() handleClick(3)} /Square value{squares[4]} onSquareClick{() handleClick(4)} /Square value{squares[5]} onSquareClick{() handleClick(5)} //divdiv classNameboard-rowSquare value{squares[6]} onSquareClick{() handleClick(6)} /Square value{squares[7]} onSquareClick{() handleClick(7)} /Square value{squares[8]} onSquareClick{() handleClick(8)} //div/); }export default function Game() {//const [xIsNext, setXIsNext] useState(true);//初始化为一个[[null,null.......null]],二维数组const [history, setHistory] useState([Array(9).fill(null)]);const [currentMove, setCurrentMove ] useState(0);// const currentSquares history[history.length-1];const currentSquares history[currentMove];const xIsNext currentMove % 2 0;function handlePlay(nextSquares) {//如果 history 为 [[null,null,null], [X,null,null]]nextSquares 为 [X,null,O]则新的 [...history, nextSquares] 数组将为 [[null,null,null], [X,null,null], [X,null,O]]// setHistory([...history, nextSquares]);// setXIsNext(!xIsNext);const nextHistory [...history.slice(0, currentMove 1), nextSquares];setHistory(nextHistory);setCurrentMove(nextHistory.length - 1)}const moveshistory.map((squares,move){let description;if (move0){descriptionGo to move# move;}else {descriptionGo to game start;}return(li key{move}button onClick{()jumpTo(move)}{description}/button/li)})function jumpTo(nextMove){setCurrentMove(nextMove);}return (div classNamegamediv classNamegame-boardBoard xIsNext{xIsNext} squares{currentSquares} onPlay{handlePlay} //divdiv classNamegame-infool{moves}/ol/div/div); }function calculateWinner(squares) {const lines [[0, 1, 2],[3, 4, 5],[6, 7, 8],[0, 3, 6],[1, 4, 7],[2, 5, 8],[0, 4, 8],[2, 4, 6],];for (let i 0; i lines.length; i) {const [a, b, c] lines[i];if (squares[a] squares[a] squares[b] squares[a] squares[c]) {return squares[a];}}return null; }
http://www.hkea.cn/news/14521941/

相关文章:

  • 江苏网站开发多少钱怎么在网站注册账号
  • wordpress做出影视网站佛山市网站建设
  • 热 综合-网站正在建设中-手机版3d做号网站
  • 建设网站具体的步骤网站在线制作软件
  • 怎么样才算大型网站开发四会建设局网站
  • 优质的小企业网站建设wordpress 查询页面
  • 百度网盘私人资源链接seo北京公司
  • 西部数码网站助手 安装棋牌类网站怎么做
  • 政务网站建设发言材料祁东网站建设
  • 虚拟主机建设网站两个优秀企业网站的优缺点
  • 武进常州做网站学网站平面设计
  • 专门下载工程建设标准的网站网站建设搜索优
  • 外贸网站建设大概多少钱wordpress 主题 激活
  • 学年论文网站建设石家庄关键词优化软件
  • 毕节建设局网站html解析wordpress
  • 虚拟主机怎么发布网站贵阳网站建设包首页
  • dw软件做网站哪些网站可以做视频搬运
  • 海口建站模板网站建设和推广的完整话术
  • 国外产品展示网站源码广州各区风险区域最新动态
  • 国内企业网站模板微微营销
  • 欧美做视频网站有哪些网页设计面试自我介绍
  • 建站步骤图视频做网站背景
  • 网上接网站项目宁波比较好的外贸公司
  • 别人网站的字体付费阅读小说网站开发建设源码
  • 安徽建设银行网站哈尔滨电商设计企业
  • 阜蒙县自治区建设学校网站绵阳seo
  • 济南市建设工程招标投标协会网站网站平台建设要多久
  • 佛山如何网站建设在哪里做wordpress没有页脚选项
  • 长沙h5手机网站制作网站上的菠菜游戏哪里可以做
  • 电商网站分析报告网页制作软件dw还需要什么