我在输入上有一个onChange
事件,监听target.value
大于0时使类随后显示按钮。
这在台式机上有效,但在iPad Safari上不起作用-我不确定为什么吗?
注意,我正在使用样式化的组件,并且PDInput
被声明为输入。
const PDInput = styled.input`
background: #fff;
border: none;
border-bottom: 1px solid #f2f2f5;
padding: 8px 0;
padding-left: ${props => props.amount ? "15px" : "0"};
font-size: 16px;
color: #0c2074;
width: 100%;
margin-bottom: 24px;
&::placeholder {
color: #0c2074;
opacity: 0.5;
}
`
const updateRef = e => {
if(e.target.value > 0) {
setRef(true);
} else {
setRef(false);
}
}
<PDInput type="text" placeholder="E.G Rent" onChange={(e) => updateRef(e)} />
答案 0 :(得分:0)
这是解决方案-问题是e.target.value从技术上讲不是>0。它返回false。您要检查e.target.value!==''。
代码:
const updateRef = e => {
if(e.target.value > 0 || e.target.value !== '') {
setRef(true);
} else {
setRef(false);
}
}