vue 过滤器使用的传参说明

在table中,需要对obj的数据类型进行文字转换,例如后台接口返回的姓别值:1,2。其中需要页面根据字典需要把1=》男,2=》女进行转换。

以前的习惯是每一个过滤方法都写一个方法进行转换,例如:

  页面代码:

 <el-table-column width="200px"align="left" label="性别">
    <template slot-scope="scope">
        <span>{{scope.row.sex | filterSex }}</span>
    </template>
</el-table-column>    

其中,过滤器方法: 

 

后面发现只需要写一个过滤器即可,需要传入需要转换的值,以及用于获取转换的字典项的vuex的getter即可。

错误写法:

以下的错误写法,发现我在filterSex方法中接收到的数据都是sex的value值,而接收不到sexGetter的值。

 <el-table-column width="200px"align="left" label="性别">
    <template slot-scope="scope">
        <span>{{scope.row.sex | filterFieldFun(scope.row.sex, ‘sexGetter‘) }}</span>    </template>
</el-table-column>

  

原因:

  经过查看官网,https://cn.vuejs.org/v2/guide/filters.html得知:需要过滤的值不需要再过滤器方法中传递,在接收的时候,已经默认方法值第一个参数就是需要过滤的值。因此正确写法是:

 <el-table-column width="200px"align="left" label="性别">
    <template slot-scope="scope">
        <span>{{scope.row.sex | filterFieldFun(‘sexGetter‘) }}</span>    </template>
</el-table-column>

  这样方法接收到scope.row.sex的值和‘sexGetter‘

  关于过滤器的官网截图说明:

原文地址:https://www.cnblogs.com/luoxuemei/p/9952356.html

时间: 2024-10-10 06:48:43

vue 过滤器使用的传参说明的相关文章

Vue组件之间的传参

Vue组件之间的传参方式有三种 第一:父传子 第二:子传父 第三:兄弟之间相传 第一,父传子,顾名思义,外层组件传参给嵌套内部的组件 在父代中嵌套的标签 <son v-bind:toSon="fatherData"></son> //发送数据给子代 在子代中接收数据 需要添加一个属性叫做prpos props:["toSon"], <!DOCTYPE html> <html lang="en"> &

Vue配置路由和传参方式及路由守卫!

安装路由 npm i vue-router -S 引入路由 import VueRouter form VueRouter 注入路由模块 Vue.use(VueRouter) 定义路由匹配规则 let routes = [ {...}, {...} ] 上列匹配规则中 对象有如下属性 path : 路由路径 component : 所加载的组件 name : 别名 redirect : 重定向 children : 子级路由 创建路由实例 let router = new VueRouter({

vue params、query传参使用

声明式:<router-link :to="...">编程式:router.push(...) 这两种方式 都可以实现跳转链接,在上篇文章继续,通过A组件跳转链接到B组件并且传参数. 1.router.push使用 router/index.js export default new Router({ routes: [ { path: '/', name: 'A', component: require('../components/A') }, { path: '/B/

Vue跳转页面传参

1.// 命名的路由 router.push({ name: 'user', params: { userId: 123 }}) ps:params这样的传参前面只能是name 2.// 带查询参数,变成 /register?plan=private router.push({ path: 'register', query: { plan: 'private' }}) 3.在routes定义path:‘/detail/:id’ 页面:to="/detail/+12345" 取参数的时

前台VUE的组件之间传参方式

路由传参 """ 转跳: <router-link :to="'/course/'+course.id">{{course.name}}</router-link> 路由: { path: '/course/:course_id', name: 'detail', component: Detail } 获取: this.$route.params.course_id """ ""&

vue:解决使用param传参后,再次刷新页面会新增一个原有的tab

问题:在最近的项目中,我通过传递不同的参数,复用同一组件进行渲染,然而意外出现一个bug,就是当我重新刷新该页面时,会新增一个tab 原来的: 刷新页面后: 查阅资料后,发现该现象是由于通过params进行传递的参数引起的,params进行传参后再次刷新页面,参数丢失,导致fullpath不一致,从而新增了页面(而我使用的d2admin基于element-ui第三方框架) 解决方案:将params方式传参改为使用query传参,这样参数就不会因为刷新而丢失 参考: https://juejin.

vue.js路由嵌套传参

通过配置路由时候按照: path:/user/:username/age/:age 这种就可以把参数传递 接受: $routes.params 接受到的是一个json格式的数据, 原文地址:https://www.cnblogs.com/xiufengchen/p/10349686.html

vue 路由跳转传参

<li v-for="article in articles" @click="getDescribe(article.id)"> getDescribe(id) { // 直接调用$router.push 实现携带参数的跳转 this.$router.push({ path: `/describe/${id}`, }) this.$route.params.id 父组件中:通过路由属性中的name来确定匹配的路由,通过params来传递参数. this

vue-cli常用传参方式

文章内容:vue中父子组件传参.哒哒哒还没写完 一.父子组件 1.1父传子(props) <!-- 父组件father.vue --> <template> <div> <div>这里是father组件</div> <div>这是父组件要传给子组件的参数:{{msg}}</div> <!-- 1.传递:data1为动态参数msg的参数名,名字自定义,与子组件接收参数名同名 data2为静态参数的参数名,名字自定义,与