Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| js:vuejs:faq:call-methods-from-components [2018/06/09 20:05] – создано mirocow | js:vuejs:faq:call-methods-from-components [2018/06/09 20:48] (текущий) – [Через ссылки $refs] mirocow | ||
|---|---|---|---|
| Строка 74: | Строка 74: | ||
| <code javascript> | <code javascript> | ||
| - | const EventBus | + | const $events |
| new Vue({ | new Vue({ | ||
| name: ' | name: ' | ||
| created() { | created() { | ||
| - | | + | |
| } | } | ||
| }); | }); | ||
| Строка 91: | Строка 91: | ||
| }, | }, | ||
| created() { | created() { | ||
| - | | + | |
| this.onFirstClick(); | this.onFirstClick(); | ||
| }); | }); | ||
| Строка 105: | Строка 105: | ||
| | | ||
| Если не нужны параметры, | Если не нужны параметры, | ||
| - | | + | |
| this.onFirstClick(); | this.onFirstClick(); | ||
| }); | }); | ||
| Строка 222: | Строка 222: | ||
| </ | </ | ||
| + | === Внешний вызов через $refs === | ||
| + | |||
| + | <code html> | ||
| + | <div id=" | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <button id=" | ||
| + | </ | ||
| + | |||
| + | <code javascript> | ||
| + | var MyComponent = Vue.extend({ | ||
| + | template: '< | ||
| + | data: function() { | ||
| + | return { | ||
| + | things: [' | ||
| + | }; | ||
| + | }, | ||
| + | methods: { | ||
| + | addThing: function() { | ||
| + | this.things.push(' | ||
| + | } | ||
| + | } | ||
| + | }); | ||
| + | |||
| + | var vm = new Vue({ | ||
| + | el: '# | ||
| + | components: { | ||
| + | ' | ||
| + | } | ||
| + | }); | ||
| + | |||
| + | document.getElementById(" | ||
| + | vm.$refs.foo.addThing(); | ||
| + | }; | ||
| + | </ | ||
| ==== Через системный вызов $bus ==== | ==== Через системный вызов $bus ==== | ||