我有一个将生成SHA256签名的函数。但是我无法从中挖掘出价值。
功能属性:
timer = null
ScanCode_Change_Event = (e) => {
clearTimeout(this.timer);
this.timer = setTimeout(() => { this.triggerChange() }, 500);
}
triggerChange = async () => {
await this._onSendSignature();
}
_onSendSignature = async () => {
const BarcodeNo = this.state.BarcodeNo;
const valueToHash = MerchantKey + BarcodeNo + Amount.replace('.', '').replace(',', '');
sha256(valueToHash).then( hash => {
// This can show the signature
ToastAndroid.show('Signature: ' + hash, ToastAndroid.LONG, ToastAndroid.BOTTOM);
this.setState({
hashSignature: hash
})
})
// This cannot show the signature
ToastAndroid.show('Signature: ' + this.state.hashSignature, ToastAndroid.LONG, ToastAndroid.BOTTOM);
}
渲染:
<Input style={{ color: 'brown' }}
placeholder='Scan Barcode'
placeholderTextColor='rgba(0, 0, 0, 0.3)'
autoFocus={true}
onChange={evt => this.ScanCode_Change_Event(evt)}
onChangeText={(BarcodeNo) => this.setState({ BarcodeNo})}>{this.state.BarcodeNo}</Input>
我目前不知道发生了什么。 BarcodeNo
可以在this.state
中获取值,但。
我尝试在构造函数上添加this._onSendSignature = this._onSendSignature.bind(this);
。我会错过什么吗?