React Remove Bootstrap按钮概述

时间:2018-08-29 17:58:52

标签: javascript reactjs twitter-bootstrap

我有一个react组件,其中我使用一个带有角色=“ button”的范围作为复选框,并希望删除当您专注于按钮时发生的轮廓。有谁知道如何做到这一点?我的复选框代码在这里:

import React, { Component } from 'react';
import PropTypes from 'prop-types';
import CheckedIcon from 'react-icons/lib/md/check-box';
import UncheckedIcon from 'react-icons/lib/md/check-box-outline-blank';

const styles = {
  defaultButtonStyle: {
  backgroundColor: 'rgba(0,0,0,0)',
  },
};

export default class CheckboxBootstrap extends Component {
  render() {
    const { disabled, style, tabIndex, onChange, name, checked, size, color, value } = this.props;

return (
  <span
    className={['checkbox', disabled && 'disabled'].join(' ')}
    style={[styles.defaultButtonStyle, style]}
    role="button"
    tabIndex={disabled ? '' : tabIndex}
    onClick={() => !disabled && onChange({
      name,
      checked: !checked,
      value: checked && value,
    })}
  >
    { checked && <CheckedIcon size={size} color={color} />}
    { checked === false && (
      <UncheckedIcon size={size} color={color} />
    )}
    {this.props.children}
  </span>
);
}}

我尝试添加样式和className作为默认值和道具。有没有人有什么建议?

1 个答案:

答案 0 :(得分:1)

您是否在outline: 'none'中明确设置了defaultButtonStyles

也:

您可能还想将disabled && 'disabled'更改为disabled ? 'disabled' : ''以停止添加"false" className

以类似的方式:

{ checked && <CheckedIcon size={size} color={color} />}
{ checked === false && (<UncheckedIcon size={size} color={color} />)}

可以成为:

{checked
    ? <CheckedIcon size={size} color={color} />
    : <UncheckedIcon size={size} color={color} />
}