-
Notifications
You must be signed in to change notification settings - Fork 9
Open
Description
local function createPetProducer()
return Reflex.createProducer({
cats = { "meow" },
dogs = {},
}, {
addCat = function(state, cat)
local nextState = table.clone(state)
local nextStateCats = table.clone(nextState.cats)
nextState.cats = nextStateCats
table.insert(nextState.cats, cat)
return nextState
end,
addDog = function(state, dog)
local nextState = table.clone(state)
local nextStateDogs = table.clone(nextState.dogs)
nextState.dogs = nextStateDogs
table.insert(nextState.dogs, dog)
return nextState
end,
})
end
local function testReflex()
local petProducer = createPetProducer()
petProducer.addDog("woof")
local broadcaster = Reflex.createBroadcaster({
producers = {
pets = petProducer,
},
dispatch = function(player, actions)
print("dispatch", player, actions)
end,
})
petProducer:applyMiddleware(broadcaster.middleware)
broadcaster:start("MockPlayer")
print("state", petProducer:getState())
end
testReflex()- Notice that the data for the
__hydrate__action is empty, when the state is evidently non-empty
The issue is getSharedState() : 28 in https://github.com/littensy/reflex/blob/master/src/broadcast/createBroadcaster.lua
- Function assumes a producer that has been created by
combineProducers
Metadata
Metadata
Assignees
Labels
No labels
