Как использовать метод vue2-фильтров внутри вычисляемых - PullRequest
0 голосов
/ 19 января 2020

В моем приложении @ vue / cli 4.0.5 я установил vue2-фильтры, и он работает нормально в шаблонах, но когда я пытаюсь использовать in в вычисленном методе, я получаю ошибку:

this.pluralize is not a function"

В моем компонент:

import Vue from 'vue'
import Vue2Filters from 'vue2-filters'
Vue.use(Vue2Filters)

...

export default {

    name: 'CategoryDetails',
    mixins: [appMixin, Vue2Filters.mixin],

    ...
    computed: {
        getRelatedTasksHeaderTitle: function () {          // ERROR HERE and Similar error and without "this."
            return ' Has ' + this.relatedTasks.length + ' ' + this.relatedTasks.length | this.pluralize(['task', 'tasks'])
        },

"vue": "^ 2.6.10", "vue2-filters": "^ 0.8.0",

Как правильно?

1 Ответ

1 голос
/ 20 января 2020

Просто вызовите фильтр как функцию, предоставив значение для фильтрации в качестве 1-го аргумента:

import Vue from 'vue'
import Vue2Filters from 'vue2-filters'
Vue.use(Vue2Filters)

...

export default {

    name: 'CategoryDetails',
    mixins: [appMixin, Vue2Filters.mixin],

    ...
    computed: {
        getRelatedTasksHeaderTitle: function () 
        {
            return ' Has ' + 
              this.relatedTasks.length + 
              ' ' + 
              this.$options.filters.pluralize(this.relatedTasks.length, ['task', 'tasks'])
        },
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...