使用 vue.js 注册自定义过滤器

Register custom filters with vue.js

我正在使用 Vue.js 和 Laravel 以及 Elixir 和 Browserify。我想注册一些自定义全局过滤器,每个都在自己的文件中。我试图按照文档进行操作,但无法正常工作。这是我得到的错误:

Uncaught ReferenceError: Vue is not defined

有什么想法吗?

这是我的代码:

vue/filters/reverse.js

Vue.filter('reverse', function (value) {
 return value.split('').reverse().join('')
})

vue/app.js

var Vue = require('vue');
Vue.use(require('vue-resource'));

new Vue({
    el: 'app',
    data: {
        test: 'abcde'
    },
filters: {
    reverse: require './filters/reverse.js'
}

});

查看

<h1 v-text="test | reverse"></h1>

如果我在 reverse.js 中添加这个,它仍然不起作用

var Vue = require('vue');

还有我的 gulpfile

    mix.browserify('app.js');

在 vue/filters/reverse.js

中这样尝试
module.exports =(function (value) {
  return value.split('').reverse().join('')
})

然后在你的 app.js

Vue.filter('reverse', require('./filters/reverse'))