2

私は2つのコンポーネントを持っています。fetchProjectList()メソッド内でメソッドを呼び出すにはどうすればよいですかcreateProject()

最初のコンポーネント:

Vue.component('projects', {
    template: '#projects-template',

    data: function () {
        return {
            list: []
        }
    },

    ready: function () {
        this.fetchProjectList();
    },

    methods: {
        fetchProjectList: function () {
            resource.get().then(function (projects) {
                this.list = projects.data;
            }.bind(this));
        }
    }

});

2 番目のコンポーネント

Vue.component('createProjects', {
    template: '#create-projects-template',

    methods: {
        createProject: function () {
            resource.save({}, {name: this.name}).then(function () {
                this.fetchProjectList()
            }.bind(this), function (response) {
                // error callback
            });
        }
    }
});
4

1 に答える 1

3

あなたはしません、またはむしろすべきではありません。コンポーネントは、そのような直接的な方法で他のコンポーネントに依存するべきではありません。

このメソッドをmixinに抽出するか、各コンポーネントにインポートする独自のオブジェクトに保持する必要があります。

ストア パターンを読んでください: http://vuejs.org/guide/application.html#State_Management

于 2016-02-12T13:29:58.230 に答える