我正在使用react-bootstrap
NPM包让我的React
组件正常显示。我需要自定义其中一些,所以我遵循official React-Bootstrap documentation,但代码会抛出错误index.jsx:5 Uncaught TypeError: Cannot read property 'addStyle' of undefined
。
这是我的自定义Button
组件代码:
import React from "react";
import Button from 'react-bootstrap/lib/Button';
import bootstrapUtils from 'react-bootstrap/lib/utils/bootstrapUtils';
bootstrapUtils.addStyle(Button, 'custom');
export default class MediaItemButton extends React.Component {
render() {
return (
<div>
<style type="text/css">{`
.btn-custom {
background-color: purple;
color: white;
}
`}</style>
<Button bsStyle="primary">Custom</Button>
</div>
);
}
}
答案 0 :(得分:6)
更改为:
import { bootstrapUtils } from 'react-bootstrap/lib/utils';
答案 1 :(得分:4)
您也可以这样做:
import React from "react";
import Button from 'react-bootstrap/lib/Button';
import bootstrapUtils from 'react-bootstrap/lib/utils/bootstrapUtils';
bootstrapUtils.addStyle(Button, 'custom');
export default class MediaItemButton extends React.Component {
render() {
var styles={
"backgroundColor" : "purple",
"color" : "white"
};
return (
<div>
<Button style={styles} bsStyle="primary">Custom</Button>
</div>
);
}
}
答案 2 :(得分:0)
bootstrapUtils
是一个命名导出而非默认导出,因此您需要在其周围使用{}
。
尝试使用:
import { bootstrapUtils } from 'react-bootstrap/lib/utils/bootstrapUtils';