У меня есть магазин на Vuex со слушателем сокета.Этот слушатель добавляет к сообщениям состояния массив массивов.
export const store = new Vuex.Store({
state: {
messages: []
},
mutations: {
SOCKET_GET_MESSAGES: (state, data) => {
state.messages[data[0].recipient] = data[0].res
// Data[0].recipient = the id of the recipient
// Data[0].res is an object with a login and a message.
},
}
В моей консоли я вижу, что структура корректна, если я делаю:
console.log(this.$store.state.messages)
с таким выводом:
[__ob__: Observer]
2: Array(5)
> 0: {login: "w", message: "ABCD", id: 65}
> 1: {login: "w", message: "Deux", id: 66}
> 2: {login: "w", message: "Quatre", id: 67}
> 3: {login: "w", message: "J'envoie au deux", id: 69}
> 4: {login: "w", message: "Test", id: 70}
length: 5
__proto__: Array(0)
length: 3
__ob__: Observer {value: Array(3), dep: Dep, vmCount: 0}
__proto__: Array
Но если я спрашиваюконкретный идентификатор я получаю неопределенным в моем журнале консоли.Например, я спрашиваю моего первого пользователя с сообщением:
console.log(this.$store.state.messages[2])
Знаете ли вы, как решить эту проблему?Я много чего прочитал о stackoverflow и документации vuex, но не нашел ответа.
Заранее благодарю за помощь.