我如何使用 refs 更改 ReactJS 中的样式 class?
How I can use refs to change styling class in ReactJS?
我正在尝试在颜色值更改时更改 div
的背景。这是我接收颜色值的函数:
ChangeColor(oColor) {
this.props.ChangeColor(oColor);
console.log("Refs: ", this.refs.colorPicker.className);
},
这里是cssclass
.colorPicker {
padding-right: 25px;
background: #000;
display: inline;
margin-right: 5px;
}
这是我的 div 元素,其背景需要在 运行 时更新。
<div ref='colorPicker' className={this.GetClass("colorPicker")} />
我不确定 refs synatx 所以请帮助解决这个问题。谢谢。
我找到了。这是答案:
ChangeColor(oColor) {
this.props.ChangeColor(oColor);
this.refs.colorPicker.style.background = oColor; //this is how background will be updated
},
此外,您可以使用 ref 元素更改 div 的颜色。例如:
const myReference = this.colorPicker.current // The DOM element
myReference.style.backgroundColor = "red"; // The style you want to apply
如果有人正在寻找 hooks 版本
export const YourComponent = (props) => {
const divRef: = useRef(null);
yourTriggerEvent = () => {
divRef.current.style.background = 'red';
}
return (
<div ref={divRef}>
</div>
);
}
我正在尝试在颜色值更改时更改 div
的背景。这是我接收颜色值的函数:
ChangeColor(oColor) {
this.props.ChangeColor(oColor);
console.log("Refs: ", this.refs.colorPicker.className);
},
这里是cssclass
.colorPicker {
padding-right: 25px;
background: #000;
display: inline;
margin-right: 5px;
}
这是我的 div 元素,其背景需要在 运行 时更新。
<div ref='colorPicker' className={this.GetClass("colorPicker")} />
我不确定 refs synatx 所以请帮助解决这个问题。谢谢。
我找到了。这是答案:
ChangeColor(oColor) {
this.props.ChangeColor(oColor);
this.refs.colorPicker.style.background = oColor; //this is how background will be updated
},
此外,您可以使用 ref 元素更改 div 的颜色。例如:
const myReference = this.colorPicker.current // The DOM element
myReference.style.backgroundColor = "red"; // The style you want to apply
如果有人正在寻找 hooks 版本
export const YourComponent = (props) => {
const divRef: = useRef(null);
yourTriggerEvent = () => {
divRef.current.style.background = 'red';
}
return (
<div ref={divRef}>
</div>
);
}