0

每当观察者触发时,我都会收到此错误:“TypeError: Event.$emit is not a function”。

我可以控制台记录 Event 对象,因为我将它导入到我的 main.js 文件中。我使用命名道具,因为我在 1 页上有 3 个不同的客户端表。我将表命名为 rmTable

<v-client-table name="rmTable" :data="filteredRMInvData" :columns="rmColumns" :options="rmOptions" v-if="rmInventoryData.length">

在我的观察者中:

materialType(value) {
    Event.$emit('vue-tables.rmTable.filter::materialtype', value)
} 

这是我的 rmOptions 变量中的 customFilters:

customFilters: [{ 
    name: 'materialtype', 
    callback(row, query) {
        console.log(row)
        console.log(query)
        return query.code.includes(row.material_group)
    }
}],

我怎样才能正确地做到这一点?至少我应该能够看到行和查询日志。我检查了github 页面上的指南,似乎我正确地遵循了它。

4

1 回答 1

0

假设你有

Vue.use(VueTables.Event);

然后

materialType(value) {
    VueTables.Event.$emit('vue-tables.rmTable.filter::materialtype', value)
} 

Event已经是一个浏览器界面,我猜这是它不起作用的原因。

于 2018-04-06T12:28:30.480 回答