Como estender um vuejs com um método?
Atualmente, estou tentando entender como estender uma instância de vuejs. Especificamente, quero separar uma instância, para poder reutilizar a base de uma instância (o elemento e os dados). Atualmente, tenho visualizações diferentes (laravel / blade) para adicionar e editar itens (domínios) e quero compartilhar uma instância de vuejs entre esses dois, mas não quero ter o mesmo código (a base) em dois lugares.
Basicamente, o que estou procurando é o seguinte:
<script type="text/javascript">
var vue = new Vue({
el: '#domain',
data: {
form: {
'name' : '',
'git_repo' : '',
'auto_deploy' : '',
'create_db' : ''
},
ajaxResponse : ''
}
});
</script>
<script type="text/javascript">
Vue.extend('domain_methods', {
methods: {
postDomain: function () {
this.$http.post('{{ route('domain.store') }}', function (data, status, request) {
this.$set('ajaxResponse', data);
}, {
data: this.form
} ).error(function (data, status, request) {
this.$set('ajaxResponse', data);
});
}
}
});
</script>
Mas isso obviamente não funciona. Eu só quero usar o método postDomain () dentro do elemento #domain, sem que o método seja gravado na criação inicial da instância.
Desde já, obrigado!