Javascript Vue.js使用方法合并2个文件

Javascript Vue.js使用方法合并2个文件,javascript,vue.js,Javascript,Vue.js,我有一个api,其中包含关于不同主题的路由,因此我希望保持api调用尽可能干净。我尝试通过一次导入从两个不同的文件导入所有vue方法 我试过做但不起作用的事情如下:;我创建了两个在vue方法中进行api调用的文件:categories.js和expenses.js,并创建了一个index.js文件,将这些文件一起导入。因此,在我的主文件中,我导入index.js文件,以便使用expenses.js和categories.js文件中的方法 我得到以下信息:TypeError:this.getCat

我有一个api,其中包含关于不同主题的路由,因此我希望保持api调用尽可能干净。我尝试通过一次导入从两个不同的文件导入所有vue方法

我试过做但不起作用的事情如下:;我创建了两个在vue方法中进行api调用的文件:categories.js和expenses.js,并创建了一个index.js文件,将这些文件一起导入。因此,在我的主文件中,我导入index.js文件,以便使用expenses.js和categories.js文件中的方法

我得到以下信息:TypeError:this.getCategories不是一个函数

类别.vue

import * as API from '@/api'

export default {
    mixins: [API],
    mounted(){
        this.getCategories()
    }
}
index.js

import * as Categories  from './categories.js'
import * as Expenses    from './expenses.js'

export default {
    Categories,
    Expenses
}
categories.js

export default {
    methods: {
        getCategories(){
            this.$http.get('api.example.com')
                .then(response => {
                    //  response
                })
        }
    }
}
费用.js

export default {
    methods: {
        getExpenses(){
            this.$http.get('api.example.com')
                .then(response => {
                    //  response
                })
        }
    }
}

更改index.js以导出数组:

import Categories  from './categories.js'
import Expenses    from './expenses.js'

export default [
  Categories,
  Expenses
]
然后将“类别”组件更改为:

import API from '@/api'

export default {
  mixins: API, // [...API, others, more] if using more mixins.
  mounted(){
    this.getCategories()
  }
}

它不起作用我明白我仍然明白:TypeError:this.getCategories不是一个函数你的index.js导入错误,我更新了答案。哇!非常感谢,你救了我的命!!也谢谢你的快速回复,我真的很感激!