В javascript this
всегда ссылается на объект владельца функции. Например, если вы определяете свою функцию foo()
на странице, тогда владелец - это объект javascript windows
; или если вы определяете foo()
на элементе html <body>
, то владелец является телом элемента html; а также если вы определяете функцию onclick элемента <a>
, то владелец является якорем.
В вашем случае вы назначаете свойство bar
объекту «владелец» в начале и пытаясь вернуть локальную переменную bar
.
Поскольку вы никогда не определяли какой-либо локальный varialbe bar
, он дает вам, поскольку bar не определен.
В идеале ваш код должен быть определен переменная как var bar;
, если вы хотите вернуть нулевое значение.
Ладно, поэтому для любого такого глупого, как я, вот в основном то, что я делал неправильно:
addPlayer
в update: (store, { data: { addPlayer } })
, это должно быть любое имя мутации. Таким образом, в этом случае insert_players
. returning
, которое является списком, и поэтому добавленный игрок является первым элементом в списке, поэтому вы можете получить его следующим образом: const addedPlayer = insert_players.returning[0];
Я не хотел просто удалять свой вопрос после того, как понял, что было неправильно вскоре после его публикации, на случай, если это будет полезно другим людям, таким как я, и поэтому я оставлю его.