Compare commits
2 Commits
93867c7d79
...
262fa0636d
Author | SHA1 | Date | |
---|---|---|---|
262fa0636d | |||
1cf762254c |
@ -6,6 +6,7 @@ import GameAction from './Game/GameAction'
|
||||
import GameBoard from './Game/GameBoard'
|
||||
import NewGame from './Game/NewGame'
|
||||
import GameMessage from './Game/GameMessage'
|
||||
import Message2Opponent from './Game/Message2Opponent'
|
||||
|
||||
export default function Game() {
|
||||
|
||||
@ -20,6 +21,7 @@ export default function Game() {
|
||||
<GameAction />
|
||||
<GameMessage />
|
||||
<GameBoard />
|
||||
<Message2Opponent />
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
|
@ -17,7 +17,8 @@ export default function Create() {
|
||||
|
||||
postData("/api/gameproposal", request)
|
||||
.then((responce) => {
|
||||
console.log("responce", responce); // JSON data parsed by `data.json()` call
|
||||
console.log("responce", responce) // JSON data parsed by `data.json()` call
|
||||
ctx.clear_Message2Opponent()
|
||||
});
|
||||
}
|
||||
|
||||
@ -32,7 +33,7 @@ export default function Create() {
|
||||
}
|
||||
|
||||
function Definitions() {
|
||||
const [ctx] = React.useContext(AppContext)
|
||||
const [ctx, dispatchCtx] = React.useContext(AppContext)
|
||||
const [data] = React.useContext(AppData)
|
||||
|
||||
const isCurrentUser = data.isCurrentUser
|
||||
@ -54,7 +55,7 @@ function Definitions() {
|
||||
opponentName,
|
||||
opponentColor,
|
||||
board: null,
|
||||
message: "let's play a game"
|
||||
message: ctx.newGame.message
|
||||
}
|
||||
}
|
||||
|
||||
@ -64,6 +65,7 @@ function Definitions() {
|
||||
isEnabled,
|
||||
|
||||
get_GameProposalRequest,
|
||||
clear_Message2Opponent: () => { dispatchCtx({ update: "newGame", message: '' }) }
|
||||
}
|
||||
}
|
||||
|
||||
@ -81,7 +83,7 @@ function get_Opponent(isCurrentUser, whitePlayerName, blackPlayerName) {
|
||||
|
||||
async function postData(url = "", data = {}) {
|
||||
console.log("POST", url, data)
|
||||
|
||||
|
||||
const response = await fetch(url, {
|
||||
method: "POST",
|
||||
headers: {
|
||||
|
3
webapp/src/components/Game/Message2Opponent.css
Normal file
3
webapp/src/components/Game/Message2Opponent.css
Normal file
@ -0,0 +1,3 @@
|
||||
.message2opponent input{
|
||||
width: 270px;
|
||||
}
|
23
webapp/src/components/Game/Message2Opponent.jsx
Normal file
23
webapp/src/components/Game/Message2Opponent.jsx
Normal file
@ -0,0 +1,23 @@
|
||||
import './Message2Opponent.css'
|
||||
import React from 'react'
|
||||
|
||||
import { AppContext } from '../../context/app'
|
||||
|
||||
export default function Message2Opponent() {
|
||||
const [ctx, dispatchCtx] = React.useContext(AppContext)
|
||||
|
||||
const setMessage = (message) => {
|
||||
dispatchCtx({ update: "newGame", message })
|
||||
}
|
||||
|
||||
return (
|
||||
<div className='message2opponent'>
|
||||
<input
|
||||
placeholder='Message to opponent'
|
||||
value={ctx.newGame.message}
|
||||
maxLength={150}
|
||||
onChange={e => setMessage(e.target.value)}
|
||||
/>
|
||||
</div>
|
||||
)
|
||||
}
|
@ -24,6 +24,7 @@ export const initialState = {
|
||||
newGame: {
|
||||
whitePlayer: '',
|
||||
blackPlayer: '',
|
||||
message: '',
|
||||
},
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user