Spikef/react-native-gesture-password

allowCross为false的时候,正中间的点依旧可以从上下或者左右跨过

Closed this issue · 3 comments

allowCross为false的时候,正中间的点依旧可以从上下或者左右跨过

@LzxHahaha 你确定?

我也遇到了这个问题,只有中间的点会,左右和上下回跨过,其他的不会。android ,三星S7

问题出在这段代码:

index文件;

 getCrossChar(char) {
    let middles = '13457', last = String(this.lastIndex);
   // if ( middles.indexOf(char) > -1 || middles.indexOf(last) > -1 ) return false;
    let point = helper.getMiddlePoint(this.state.circles[last], this.state.circles[char]);
    for (let i=0; i < middles.length; i++) {
        let index = middles[i];
        if ( helper.isEquals(point, this.state.circles[index]) ) {
            return String(index);
        }
    }
    return false;
}

这个方法的 // if ( middles.indexOf(char) > -1 || middles.indexOf(last) > -1 ) return false;这一句话放错的地方,应该放在最后或者直接注释。