JS Fiddle Demo (откройте консоль, когда вы ее используете)
Привет, Джефри,
Прежде всего, я думаю, что я тоже новичок, и явсегда будет:) ....
Vue.component()
- это способ создания компонентных шаблонов, но внутри сценария, а не внутри HTML-шаблона .... все же вам нужно инициировать new Vue()
экземпляр.
"$emit('change', $event.target.checked)
внутри дочернего компонента, это просто способ для дочернего компонента отправлять обратно значения родительскому компоненту ...
первый аргумент, который принимает $emit()
, этоимя прослушивателя событий (может быть любым словом), проверьте эту ссылку , поэтому прослушиватель событий здесь <base-checkbox @change="lovingVue">
называется @change
.
Второй аргумент, который он принимает, это то, какое значение вы хотите отправить обратно родителю ... в этом случае мы хотим отправить значение v-bind:checked="checked"
.... и это имя мы упоминаем после$event.target
.
затем следует часть lovingVue
, которую вы можете вызывать как функцию в методах (как если бы вы рассматривали ее как любое другое событие), и она будет нести значение вместе с ней.
new Vue({
//'#app' is the name of the parent componenet
el: '#app',
methods:{
// The e (can be any letter or word) here is the value that was emitted by the
// child(base-checkbox) to the parent(app)...and this case the value is Boolean
lovingVue(e){
console.log(e)
}
}
})