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!

questionAnswers(1)

yourAnswerToTheQuestion