美文网首页vue
关于vue的slot-scope

关于vue的slot-scope

作者: 小虾米前端 | 来源:发表于2018-04-02 13:34 被阅读0次

1、网上看到挺多关于这方面的问题,其实这个属性我也没有特别熟,我只能说下我所了解的用法。

2、slot-scope是vue2.10新增的一个作用域插槽,vue官网可以找的到,我就不贴链接了。
3、我平时主要的用法是配合elementUI里的table组件来使用,感觉很方便

<el-table>
  <el-table-column label="测试" >
     <template slot-scope="scope" prop="testType">
      //prop可以接收接口的参数,例如这个testType是后端传给你的用来选择状态的参数,就可以这样用
        <span v-if="scope.row.testType==0" >会议进行中</span>
        <span v-if="scope.row.testType==1" >会议准备中</span>
        <span v-if="scope.row.testType==2" >会议结束</span>
     </template>
  </el-table-column>
</el-table>

4、也可以这样用

<el-table-column label="弹出框">
  <template slot-scope="scope">
     <el-button @click="testBtn(scope.row)">查看弹框</el-button>
这个scope.row是当前表格一行的所有数据,例如 scope.row.id就可以拿到后端传过来的id,然后把这个id传给后端,用来操作这一行(例如各种点击事件)
  </template>
</el-table-column>

export default{
  data(){},
methods:{
  testBtn(item){
  let val = {
    id= item.id
  这个id,就是后端所需要你传的参数,从上面的点击事件中传过来
  }
  }
}

5、具体什么原理我还在摸索中,暂时举两个小例子,见谅

相关文章