#graphql #apollo
#graphql #apollo
Вопрос:
У меня простой вопрос, в настоящее время я использую GraphQL / Hasura для подписки на некоторые данные, эта подписка принимает идентификатор в качестве параметра, но в случае, когда идентификатор равен нулю, моя подписка возвращает все данные по умолчанию…
Вот подписка :
subscription MySubscription($id: Int) {
dcim_device(where: { virtual_chassis_id: { _eq: $id } }) {
id
name
serial
site_id
status
ip_address {
address
}
dcim_platform {
name
}
device_tags {
tag_id
extras_tag {
id
name
color
}
}
dcim_devicerole {
color
name
}
virtual_chassis_id
dcim_virtualchassis {
id
}
dcim_interfaces {
enabled
name
id
type
}
}
}
И вот Vue.js интерфейсная часть, в которой я вызываю свою подписку с Apollo :
apollo: {
$subscribe: {
dcim_device: {
query: require("../../graphql/subscribeToNewDevicesByVCid.gql"),
variables() {
return {
id: this.node.dcim_virtualchassis.id,
};
},
result({ data }) {
this.devices = data.dcim_device;
console.log(this.devices);
},
},
},
},
Как вы можете видеть, «узел» может меняться в зависимости от щелчка пользователя, и в моем случае некоторые узлы имеют нулевой virtual_chassis_id…
Я хотел бы знать, возможно ли перехватить или что-то в этом роде случай, когда для запроса не заданы параметры, чтобы отобразить что-то еще.
Заранее спасибо!