明确将Vue过滤器导入组件

我有一个全局过滤器文件,我试图将一个过滤器显式导入组件。

在我的过滤器文件中,我有:

//filters.js
import Vue from 'vue';
Vue.filter('shorten',(str,len) => (str.length > len ? `${str.substring(0,len)}...` : str));
Vue.filter('secToMin',(dur) => Math.ceil (dur / 60));

然后在我的组件中,我想做类似的事情:

//MyComponent.vue
import secToMin from './util/filters.js';
export default {
 filters: {
   secToMin: { secToMin,},};

但这实际上不会触发过滤器。可以这样做吗?

j_lieying 回答:明确将Vue过滤器导入组件

您可以将过滤器导出为命名的导出:

export function shorten (str,len) {
  return str.length > len ? `${str.substring(0,len)}...` : str;
}

export function secToMin (dur) {
  return Math.ceil(dur / 60);
}

然后在您的组件中:

import { secToMin } from './util/filters.js';

export default {
 filters: {
   secToMin
 }
};
本文链接:https://www.f2er.com/3150488.html

大家都在问