Absolutely! You can easily achieve this by passing the same value to both components.
<typeahead ep="foo" v-model="someValue"></typeahead>
<typeahead ep="bar" v-model="someValue"></typeahead>
By emitting the value back to the parent in your component, you ensure that both components update simultaneously.
Check out this minimal example implementation:
Vue.component('typeahead', {
template: '<div><input v-model="displayValue"> on {{ endpoint }}</div>',
props: {
value: String,
endpoint: String
},
computed: {
displayValue: {
get () {
return this.value
},
set (value) {
this.$emit('input', value)
}
}
}
})
For a more detailed demonstration with common scenarios like updating values from the parent or ensuring data synchronization between parent and child components, you can view this jsfiddle link: https://jsfiddle.net/crswll/tLmszrp2/