Comments (8)
When you say the game state is changed, you mean you are able to see the new state on the Debug UI? Which props do you find are stale? What is this callback you are referring to (did you mean click handler)?
from boardgame.io.
Yes, I meant click handler. Specifically, the game state is stale. For example, I have an action called selectDie
and in that action, I log the new state produced. Immediately after calling that action, I see the state has correctly changed, but this.props.G
still refers to the old state.
from boardgame.io.
Do you have a link to your code? I can take a look and see what's going on.
from boardgame.io.
Thanks! Unfortunately, the code is a bit of a mess now since I just started working on the project this afternoon. Here is the line where I specifically call my move. The logging statement after shows that the game state is stale.
from boardgame.io.
reduxjs/react-redux#748 should answer your question.
Also, I would recommend keeping click handlers fairly simple. There shouldn't be much game logic in there. Your game might also benefit from the upcoming support for phases.
from boardgame.io.
@nicolodavis Yes, I agree that the handler is getting too complex. I've been watching the phases support and I think that would likely make things much cleaner. Is it currently possible to call a move (or endTurn
) from within another move?
from boardgame.io.
Calling an action from a reducer (move handler) is generally considered an anti-pattern.
I think the phases support should help with this. There are hooks to automatically end a phase when a particular condition is met.
I'll add something similar for ending turns.
from boardgame.io.
Thanks! This is just a fun side project so I'll probably just wait until phases support lands.
from boardgame.io.
Related Issues (20)
- Tutorial with React doesn't work HOT 2
- Client.subscribe breaks after unsubscribing
- Error when set custom playerID for multiplayer local HOT 2
- Koa example in Typescript - cant modify stream HOT 3
- Deployment issues with ngrok (or other tunneling)
- Calling a move when a phase begins HOT 6
- playerView do not get the correct playerID after switch player with debugging panel in multiplayer
- Facilitator / Non-player access to game state
- Whats the state of the project? HOT 7
- Running server for first time using tutorial throws error HOT 3
- 登陆使用 UserIdSettingKit.settingUserId 报错userSession 不存在.
- Client is sent a complete copy of initialState HOT 1
- AI Bot for Actual Gameplay HOT 4
- Using boardgame.io on a team format. HOT 1
- Using without react ? HOT 2
- Reset doesn't work on multiplayer games HOT 2
- A Phase where all players can make moves HOT 1
- Integration with BoardGameArena (i.e. probablly a PHP version of server)
- (Bug) overrideGameState() doesn't update move dispatchers
- How to disable logging?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from boardgame.io.