亲宝软件园·资讯

展开

antd vue 如何调整checkbox默认样式

YaaLee_ 人气:0

antd vue 调整checkbox默认样式

// 鼠标hover时候的颜色
.ant-checkbox-wrapper:hover .ant-checkbox-inner,
.ant-checkbox:hover .ant-checkbox-inner, 
.ant-checkbox-input:focus + .ant-checkbox-inner{
   border: 2px solid #1BBA79 !important;
}
// 设置默认的颜色
.ant-checkbox{
  .ant-checkbox-inner{
    border: 2px solid #1BBA79;
    background-color: transparent;
  }
} 
// 设置选中的颜色
.ant-checkbox-checked .ant-checkbox-inner,
.ant-checkbox-indeterminate .ant-checkbox-inner {
    background-color: #1BBA79;
    border: 2px solid #1BBA79;
}

antd中table内添加checkbox踩坑

table是一些管理系统经常需要使用的组件,如果想要在table中同时操作多项,可能需要在前面添加checkbox,今天在项目终于到一个坑,使用的是antd组件库,但是在按照官网的例子引入时,发现点击其中某一行的checkbox,会将所有行的checkbox同时选中

在查阅官方文档后,发现有一个selectedRowKeys属性,文档上说selectedRowKeys需要和onChange 进行配合进行配合使用,onChange方法有两个参数function(selectedRowKeys, selectedRows),第二个参数表示当前行的数据,第一表示的是数据中的key值,这个就很关键,如果你的数据中没有绑定key这个字段,那么这个参数输出的就是undefined,所有需要在数据中绑定一个唯一的key值,可以和数据中的id保持一直。

具体代码:

const { selectedRowKeys } = this.state
const rowSelection = {
    selectedRowKeys,
    onChange:this.onSelectChange
}
<Table
     columns={this.state.columns}
     dataSource={this.state.auditCommonModelLists}
     rowSelection={rowSelection}
/>
onSelectChange = (selectedRowKeys, selectedRows) => {
        // console.log(selectedRowKeys, selectedRows)
        this.setState({selectedRowKeys})
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

加载全部内容

相关教程
猜你喜欢
用户评论