if fetching ? classname + woble
This commit is contained in:
parent
3eafcf302f
commit
c007aec06e
@ -15,19 +15,31 @@ export default function Create() {
|
||||
|
||||
const request = ctx.get_GameProposalRequest()
|
||||
|
||||
ctx.setFetching(true)
|
||||
|
||||
postData("/api/gameproposal", request)
|
||||
.then((responce) => {
|
||||
console.log("responce", responce) // JSON data parsed by `data.json()` call
|
||||
ctx.clear_Message2Opponent()
|
||||
ctx.setFetching(false)
|
||||
});
|
||||
}
|
||||
|
||||
console.log("ctx", ctx)
|
||||
return (
|
||||
<button
|
||||
className={'game-action create' + (ctx.isEnabled ? ' enabled' : ' disabled')}
|
||||
className={'game-action create'
|
||||
+ (ctx.isEnabled ? ' enabled' : ' disabled')
|
||||
+ (ctx.isFetching === true ? ' woble' : '')
|
||||
}
|
||||
onClick={onClick}
|
||||
>
|
||||
Create
|
||||
<span>C</span>
|
||||
<span>r</span>
|
||||
<span>e</span>
|
||||
<span>a</span>
|
||||
<span>t</span>
|
||||
<span>e</span>
|
||||
</button>
|
||||
)
|
||||
}
|
||||
@ -64,8 +76,11 @@ function Definitions() {
|
||||
hasCurrentUser,
|
||||
isEnabled,
|
||||
|
||||
isFetching: ctx.newGame.isFetching,
|
||||
setFetching: (status) => { console.log("setFetching: ", status); dispatchCtx({ update: "newGame", isFetching: status }) },
|
||||
|
||||
get_GameProposalRequest,
|
||||
clear_Message2Opponent: () => { dispatchCtx({ update: "newGame", message: '' }) }
|
||||
clear_Message2Opponent: () => { dispatchCtx({ update: "newGame", message: '' }) },
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -8,14 +8,14 @@ import Proposal from './GameSelector/GameProposal';
|
||||
|
||||
export default function GameSelector() {
|
||||
const [data] = React.useContext(AppData)
|
||||
const [ctx, dispatchCtx] = React.useContext(AppContext)
|
||||
const [/*ctx*/, dispatchCtx] = React.useContext(AppContext)
|
||||
|
||||
const { pathname } = useLocation();
|
||||
const isProposalPath = matchPath("/game/proposal/*", pathname);
|
||||
const isActivelPath = matchPath("/game/active/*", pathname);
|
||||
const isArchivePath = matchPath("/game/archive/*", pathname);
|
||||
|
||||
console.log("GameSelector appCtx", ctx)
|
||||
// console.log("GameSelector appCtx", ctx)
|
||||
|
||||
const onClick_proposal = (selectedGame) => {
|
||||
dispatchCtx({ component: "game-selector", selectedGameProposal: selectedGame })
|
||||
|
@ -2,9 +2,6 @@
|
||||
|
||||
.woble {
|
||||
display: flex;
|
||||
cursor: pointer;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
/* .wave > span {
|
||||
|
@ -25,6 +25,7 @@ export const initialState = {
|
||||
whitePlayer: '',
|
||||
blackPlayer: '',
|
||||
message: '',
|
||||
isFetching: false,
|
||||
},
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user