Reactjs 我可以使用jsx在同一元素中添加新类吗?
我的意思是,有没有办法写这样的东西Reactjs 我可以使用jsx在同一元素中添加新类吗?,reactjs,jsx,Reactjs,Jsx,我的意思是,有没有办法写这样的东西 <input className="form-control" onChange={() => { this.classList.add('is-valid'); //where this is input element }} /> { this.classList.add('is-valid');//其中这是输入元素 }} /> 您可
<input
className="form-control"
onChange={() => {
this.classList.add('is-valid'); //where this is input element
}}
/>
{
this.classList.add('is-valid');//其中这是输入元素
}}
/>
您可以使用局部状态(和条件表达式),如下所示:
function App() {
const [isValid, setIsValid] = useState(false);
return (<input
className={'form-control' + (isValid ? ' is-valid' : '')}
onChange={() => {
setIsValid(true);
}}
/>)
}
函数应用程序(){
const[isValid,setIsValid]=useState(false);
报税表({
setIsValid(true);
}}
/>)
}
您可以使用局部状态(和条件表达式),如下所示:
function App() {
const [isValid, setIsValid] = useState(false);
return (<input
className={'form-control' + (isValid ? ' is-valid' : '')}
onChange={() => {
setIsValid(true);
}}
/>)
}
函数应用程序(){
const[isValid,setIsValid]=useState(false);
报税表({
setIsValid(true);
}}
/>)
}
更改输入字段时是否要在其上添加类名?使用React时不应手动更改DOM。如果组件重新加载(且添加的类名丢失),该怎么办?您可以使用state来确定哪些类名应该存在,哪些类名不应该存在。您是否尝试了类似类名={
表单控件之类的操作${new_class}}
@VilfredDreijer-yes来自tj的答案会起作用。尽管我会用一个状态钩子保存一个值(const[value,setValue]=useState()
)来更改const[isValid,setIsValid]=useState(false)
),因为不管怎样,
都可能需要它。然后在
中,您希望添加onChange={e=>setValue(e.target.value)}
在更改输入字段时是否希望在输入字段上添加类名?在使用React时不应该手动更改DOM。如果组件重新加载会怎么样(并且添加的类名丢失了)?您可以使用state来确定哪些类名应该存在,哪些类名不应该存在。您是否尝试了类似className={
form control${new_class}}
@VilfredDreijer-yes这样的方法?Tj的答案会起作用。尽管我会更改const[isValid,setIsValid]=useState(false)
带有一个状态钩子,其中包含一个值(const[value,setValue]=useState()
),因为不管怎样,
都可能需要它。然后在
中添加onChange={e=>setValue(e.target.value)}