最好的办法似乎是订阅感兴趣的主题,如果它没有列出,那么它就不存在,所以创建它,否则就获取它
const [subscriptions] = await this.topic.getSubscriptions()
const subs = subscriptions.map(subscription => last(subscription.name.split('/')))
const subExists = subs.includes(appConfig.pubSub.subscription)
let sub
if (subExists) {
sub = this.pubSubClient.subscription(appConfig.pubSub.subscription)
console.log('using existing subscription')
} else {
[sub] = await this.topic.createSubscription(appConfig.pubSub.subscription)
console.log('using created subscription')
}
FYI last从lodash导入,并返回数组中的最后一项