如何在javascript中更改对象状态值(react-native)

时间:2018-04-22 16:10:37

标签: javascript react-native axios native-base backendless

我正在使用backendless api来创建简单的crud应用程序。这是我的表架构:

产品表:

  • name(string)
  • 价格(双倍)
  • description(text)

我使用本机库中的输入组件来获取用户的值。但我有价格的问题,当我输入价格5000然后在数据库中的值不是5000而是892350512,我认为这是因为onChangeText的值是字符串,我混淆了如何在我的状态parseInt()。

这是我的代码:

state = { data: {} }

allProduct(){
    axios.get(`${uri}/products?sortBy=created%20desc`).then(result => {
        this.setState({
            data: result.data
        })
    })
}

handleSubmit(){ 

    axios.post(`${uri}/products`, this.state.data).then(result => {
        if(result.data){
            this.allProduct,
            alert("Succes!")
        }
    })

    // alert(JSON.stringify(this.state.data))
}

这是我从用户那里获取价值的表单代码:

<Label style={styles.batasAtas}>Harga</Label>
<Item regular>
    <Input onChangeText={(price) => this.setState({data:{...this.state.data, price}})} keyboardType = 'numeric'/>
</Item>

1 个答案:

答案 0 :(得分:0)

你可以这样做:

 import random

 liste = [random.randint(33, 127) for i in range(8)]
 osman=', '.join(str(x) for x in liste)
 a=bytes.fromhex(hex(liste[0])[2:]).decode()
 b=bytes.fromhex(hex(liste[1])[2:]).decode()
 c=bytes.fromhex(hex(liste[2])[2:]).decode()
 d=bytes.fromhex(hex(liste[3])[2:]).decode()
 e=bytes.fromhex(hex(liste[4])[2:]).decode()
 f=bytes.fromhex(hex(liste[5])[2:]).decode()
 g=bytes.fromhex(hex(liste[6])[2:]).decode()
 h=bytes.fromhex(hex(liste[7])[2:]).decode()

 print(a,b,c,d,e,f,g,h,sep="")

将价格更改为整数。