Как я могу расширить другой компонент?
Моя основная составляющая
MainComponent.vue
<template>
<div>
empty
</div>
</template>
<script>
export default {
methods: {
sendAlert(msg) {
alert(msg);
}
}
}
</script>
и второй компонент;
SecondComponent.vue
<template>
<div>
<button @click="MainComponent.methods.sendAlert('first try')"></button>
<!--OR-->
<button @click="sendAlert('second try')"></button>
</div>
</template>
<script>
import MainComponent from "./MainComponent.vue"
export default {
extends: { MainComponent },
methods: {
...MainComponent.methods
}
}
</script>
я не могу получить доступ к методам. Как я могу это сделать?
Примечание: (я не хочу этого)
<template>
<div>
<button @click="sendAlert('second try')"></button>
</div>
</template>
<script>
import MainComponent from "./MainComponent.vue"
export default {
extends: { MainComponent },
methods: {
Message(msg) {
MainComponent.methods.sendAlert(msg);
}
}
}
</script>
Итак, у меня есть один или несколько методов в компоненте. Как я могу использовать эти методы в другом компоненте?
sendAlert
в какой-нибудь файл. Например./use/alert.js
, а затем импортируйте его в компоненты, которым он нужен, напримерimport { sendAlert } from './use/alert'
. - person rits   schedule 12.04.2021