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})
- }
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持w3xue。