Извините за мой плохой английский, это не мой основной язык!
Попробуй!
Вам нужно сгенерировать два файла в одном каталоге:
- путь / к / checkboxComponent.vue
- путь / к / checkboxComponent.html
В файле checkboxComponent.vue
<script>
// Add imports here eg:
// import Something from 'something';
export default {
template: require('./checkboxComponent.html'),
data() {
return { checked: false, title: 'Check me' }
},
methods: {
check() { this.checked = !this.checked; }
}
}
</script>
В файле checkboxComponent.html
<template>
<div class="checkbox-wrapper" @click="check">
<div :class="{ checkbox: true, checked: checked }"></div>
<div class="title"></div>
</div>
</template>
Теперь вам нужно объявить этот Компонент в том же файле, который вы объявляете приложением Vue, следующим образом:
Vue.component('my-checkbox', require('path/to/checkboxComponent.vue').default);
В моем случае
У меня есть три файла с такой структурой каталогов:
js/app.js
js/components/checkboxComponent.vue
js/components/checkboxComponent.html
В app.js я объявляю приложение Vue, поэтому путь к методу require должен начинаться с точки, например:
Vue.component('my-checkbox', require('./components/checkboxComponent.vue').default);