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

网站优化排名软件哪些 最好医疗网站如何做优化

网站优化排名软件哪些 最好,医疗网站如何做优化,烟台网站建设公司,做阿里巴巴网站找谁下面是一个完整的 Tic-Tac-Toe(井字棋)游戏的实现,用 React 构建。包括核心逻辑和组件分离,支持两人对战。 1. 初始化 React 项目: npx create-react-app tic-tac-toe cd tic-tac-toe2.文件结构 src/ ├── App.js…

下面是一个完整的 Tic-Tac-Toe(井字棋)游戏的实现,用 React 构建。包括核心逻辑和组件分离,支持两人对战。

1. 初始化 React 项目:

npx create-react-app tic-tac-toe
cd tic-tac-toe

2.文件结构

src/
├── App.js
├── Board.js
├── Square.js
└── index.js

在这里插入图片描述

Step 1: Square.js - 单个方块组件

import React from 'react';const Square = ({ value, onClick }) => {return (<button className="square" onClick={onClick} style={{width: '60px',height: '60px',fontSize: '24px',cursor: 'pointer'}}>{value}</button>);
};export default Square;

Step 2: Board.js - 棋盘组件

import React from 'react';
import Square from './Square';const Board = ({ squares, onClick }) => {const renderSquare = (i) => {return <Square value={squares[i]} onClick={() => onClick(i)} />;};return (<div style={{display: 'flex',flexDirection: 'column',justifyContent: 'center',alignItems: 'center',}}><div style={{ display: 'flex' }}>{renderSquare(0)}{renderSquare(1)}{renderSquare(2)}</div><div style={{ display: 'flex' }}>{renderSquare(3)}{renderSquare(4)}{renderSquare(5)}</div><div style={{ display: 'flex' }}>{renderSquare(6)}{renderSquare(7)}{renderSquare(8)}</div></div>);
};export default Board;

Step 3: App.js - 游戏逻辑和主组件


import React, { useState } from 'react';
import Board from './Board';const App = () => {const [squares, setSquares] = useState(Array(9).fill(null));const [isXNext, setIsXNext] = useState(true);const calculateWinner = (squares) => {const lines = [[0, 1, 2], [3, 4, 5], [6, 7, 8], // Rows[0, 3, 6], [1, 4, 7], [2, 5, 8], // Columns[0, 4, 8], [2, 4, 6]            // Diagonals];for (let [a, b, c] of lines) {if (squares[a] && squares[a] === squares[b] && squares[a] === squares[c]) {return squares[a];}}return null;};const winner = calculateWinner(squares);const handleClick = (i) => {if (squares[i] || winner) return; // Ignore if square is already filled or game is wonconst nextSquares = squares.slice();nextSquares[i] = isXNext ? 'X' : 'O';setSquares(nextSquares);setIsXNext(!isXNext);};const restartGame = () => {setSquares(Array(9).fill(null));setIsXNext(true);};const status = winner ? `Winner: ${winner}` : `Next Player: ${isXNext ? 'X' : 'O'}`;return (<div style={{ textAlign: 'center', marginTop: '50px' }}><h1>Tic-Tac-Toe</h1><Board squares={squares} onClick={handleClick} /><h3>{status}</h3><button onClick={restartGame} style={{ padding: '10px 20px', marginTop: '20px' }}>Restart</button></div>);
};export default App;

Step 4: index.js - 渲染应用

import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';ReactDOM.render(<App />, document.getElementById('root'));

3. 启动应用:

npm start

打开浏览器,访问 http://localhost:3000 即可运行。如图所示:
在这里插入图片描述
希望这些内容对你有所帮助!如果有任何问题,欢迎随时提问。

http://www.yayakq.cn/news/183737/

相关文章:

  • 江苏国家住房和城乡建设部网站电子商务网站建设与管理课后习题
  • 烈焰传奇网页版河池网站优化
  • 电子商务网站建设预算表【转】网页 网站 html如何实现"关闭窗口"代码大全
  • 盐城网站建设hx1818.net 网站开发
  • wordpress建站访问提示不安全电商主题wordpress
  • 先进的网站设计公司企业邮箱个人注册
  • 网站开发的中期工作有哪些做的好的小众网站
  • 网站建设公司销售前景网站建设明薇通网络服务好
  • 西安做网站云速网络用织梦做网站有什么公司会要
  • 苏州网站建设招标网站建设首选定制开发
  • seo整站优化价格如何建设景区旅游网站
  • 佛山h5网站公司网站的虚拟人怎么做的
  • 网站开发需要哪些语言品牌关键词优化哪家便宜
  • 太湖县网站建设公司郑州 建站 公司
  • 政务公开 加强门户网站建设网站用nodejs做后台
  • 江苏省教育现代化建设水平监测网站网站制作有哪些方面
  • 免费自助建手机网站免费做漫画网站
  • 建设部作业证件查询官方网站直播型网站开发
  • html菜鸟教程代码刷关键词排名seo软件软件
  • 上海省住房与城乡建设厅网站基于jsp企业网站开发设计答辩ppt
  • 本地南通网站建设购买网站模版可以自己做吗
  • 上手机淘宝网站建设网站建设要准备什么资料
  • 崇明集团网站建设买外链网站
  • wordpress网站 添加微信支付google引擎免费入口
  • 广州商务网站建设电话做网站推广的 什么是开户
  • 社区网站模板上位机软件开发工具
  • 0基础做网站用什么语言南京营销型网站建设
  • 电商网站方案建设怀化公司做网站
  • 石家庄网站建设制作dede建设网站
  • 济南做网站 推荐行知科技网站建设与管理 期末