Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.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
Javascript 如何在带过滤器的Vue模板中使用三元运算符?_Javascript_Function_Vue.js_Vuejs2_Vue Component - Fatal编程技术网

Javascript 如何在带过滤器的Vue模板中使用三元运算符?

Javascript 如何在带过滤器的Vue模板中使用三元运算符?,javascript,function,vue.js,vuejs2,vue-component,Javascript,Function,Vue.js,Vuejs2,Vue Component,我有一个应用程序可以根据桌面或手机设计设置过滤器,但三元运营商不起作用 下面是组件调用: <Metric prefix="R$" :is-numeric-subvalue="false" :is-total="true" subvalue="Abril à Maio" title="Disponível" :value="highli

我有一个应用程序可以根据桌面或手机设计设置过滤器,但三元运营商不起作用

下面是组件调用:

<Metric
    prefix="R$"
    :is-numeric-subvalue="false"
    :is-total="true"
    subvalue="Abril à Maio"
    title="Disponível"
    :value="highlightData.available | defineFilter()"
/>
我的过滤器:

filters: {
  decimal: decimalFilter,
  shortedNumber: shortedNumberFilter
}
我收到了警告:

[Vue warn]:无法解析筛选器:defineFilter


将过滤器移动到
过滤器
,并删除这两种方法。筛选器将接收数字值作为参数。由于没有
访问过滤器中的组件,因此您可以直接使用预定义的功能:

过滤器:{
定义过滤器(num){
常数测试=真;
返回测试?decimalFilter(num):shortedNumberFilter(num);
}
}

确保两个外部函数都准备好接收数字并返回值。这是一个

我觉得不错。为什么您认为它不起作用?@NileshPatel我不知道,Vue返回警告“无法解析筛选器:defineFilter”,这是因为它在您的
方法中。将其移动到
过滤器
@Dan,但如何操作?将我的方法定义过滤器移动到过滤器?是的,过滤器只是功能,工作正常,谢谢!
filters: {
  decimal: decimalFilter,
  shortedNumber: shortedNumberFilter
}