我希望所有使用class ModelBForm(forms.ModelForm):
class Meta:
model = ModelB
exclude = ['id', 'mod']
的组件都能根据用户输入自动获取RTL或LTR方向。
回到过去(2或3年前),我使用jQuery选择所有这些输入并应用integer division之类的脚本。但是在React中实现此功能的最佳解决方案是什么?
答案 0 :(得分:0)
围绕Input组件构建包装器,并在该组件内部执行逻辑:)然后,在代码中的任何地方都使用<CustomInput />
而不是<input ...>
。
编辑:
附上包装输入元素的代码示例:
import React from "react";
class CustomInput extends React.Component {
render() {
const {onChange, ...otherProps} = this.props;
// Please provide onChange callback to make this Input element "Controlled"
// otherProps are there for things like default value etc. :)
return(
<input type="text" onChange={onChange} />
);
}
}
export default CustomInput;
如果您不使用任何生命周期方法,您甚至可以将该组件实现为功能
import React from "react";
const CustomInput = ({onChange, ...otherProps}) => (
<input type="text" onChange={onChange} />;
);
export default CustomInput;