Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vue.js 如何在vue中定义全局方法?_Vue.js - Fatal编程技术网

Vue.js 如何在vue中定义全局方法?

Vue.js 如何在vue中定义全局方法?,vue.js,Vue.js,“按过滤器事件”方法用作组件中v-for循环的计算属性: getters: { eventsByFilters(state) { var events = state.events if (state.search === '' && state.selected) { switch (state.selected) { case 'month'

“按过滤器事件”方法用作组件中v-for循环的计算属性:

getters: {
        eventsByFilters(state) {
            var events = state.events
            if (state.search === '' && state.selected) {
                switch (state.selected) {
                    case 'month':
                        return events.filter(item => this.isMonthEqualNow(item))
                    case 'week':
                        return events.filter(item => this.isMonthEqualNow(item) && this.isWeekEqualNow(item))
                    case 'day':
                        return events.filter(item => this.isMonthEqualNow(item) && this.isWeekEqualNow(item)
                            && this.isDayEqualNow(item))
                    default:
                        return events
                }
            } else {
                return events.filter(item => item.title.indexOf(state.search) !== -1)
            }
        },
我需要使用isMonthEqual和其他方法来确定它们是否属于某些日期。但我发现很难访问它们:

如果我在操作中定义它们,我就无法访问它们,因为getter中不存在上下文


如果我也全局定义,那么就没有办法访问它们。在本例中,这是未定义的,如果没有定义,就会抛出方法未定义的错误

我假设您使用Vue CLI创建了项目,并因此使用了webpack。您应该能够在单独的文件中定义这些方法,导出它们,然后将它们导入到存储文件中

/Helpers/GlobalFunctions.js

导出函数为MonthEqualParam1,param2{ //废话废话 } store.js

//头条 从“@/Helpers/GlobalFunctions.js”导入{isMonthEqual} //贮藏 const store=新的Vuex.store{ 吸气剂:{ myGetter:state=>{ //在某处使用该函数 常数isEqual=isMonthEqualmonth1,month2 等回报 } } }
我假设您是使用Vue CLI创建项目的,因此使用的是webpack。您应该能够在单独的文件中定义这些方法,导出它们,然后将它们导入到存储文件中

/Helpers/GlobalFunctions.js

导出函数为MonthEqualParam1,param2{ //废话废话 } store.js

//头条 从“@/Helpers/GlobalFunctions.js”导入{isMonthEqual} //贮藏 const store=新的Vuex.store{ 吸气剂:{ myGetter:state=>{ //在某处使用该函数 常数isEqual=isMonthEqualmonth1,month2 等回报 } } }
你在用vuex吗?@Andresfornda,是的,你在用vuex吗?@Andresfornda,是的