react native:有没有办法将功能传递给“ onpress”?

时间:2020-02-25 06:00:18

标签: javascript reactjs react-native expo

是否可以将功能传递给“ onpress”?

我需要将“ postData”功能传递给“ onpress”按钮, 我该怎么做? 在我的代码中,我想在“ postData”内部传递2个“ onpress”。 如果有错误,请让我知道,我会解决的。 这是我的代码,例如:

if(__name__ == '__main__'):
       main()

1 个答案:

答案 0 :(得分:0)

检查此更新的代码

export default class OrderInformationScreen extends Component {
  constructor(props) {
    super(props);
    const { state } = props.navigation;
    this.state = {
      title: state.params.data
    };
    //alert(JSON.stringify((state.params.data.SHORT_TEXT)))
  }

  postData = () => {
    const postData = {
      ACTOR_ID: "APAZ",
      REPORT_KEY: "001",
      WORK_ITEM_ID: "000018639250",
      NOTE: "fun all time"
    };
    const axios = require("axios");
    axios
      .post(
        "https://harigotphat1.mekorot.co.il/ConfirmPackaotWS/OrderApprove/OrderApprove_OrderApp_Save_Approvement/" +
          postData
      )
      .then(function(response) {
        console.log("roei response======>>>>", response);
      });
  };

  render() {
    return (
      <>
        <View
          style={{
            alignItems: "flex-start",
            justifyContent: "center",
            borderColor: "blue",
            flexDirection: "row",
            justifyContent: "space-evenly"
          }}
        >
          <TouchableOpacity onPress={() => console.log("cancel!")}>
            <Avatar
              size="large"
              containerStyle={{ marginTop: 30 }}
              activeOpacity={0.2}
              rounded
              source={require("../assets/down.png")}
              style={{ height: 80, width: 80 }}
              onPress={() => console.log("cancel!")}
            />
            <View>
              <Text style={{ fontSize: 25, fontWeight: "bold", color: "red" }}>
                לדחות
              </Text>
            </View>
          </TouchableOpacity>
          <TouchableOpacity onPress={() => this.postData()}>
            <Avatar
              size="large"
              activeOpacity={0.1}
              rounded
              source={require("../assets/up.png")}
              style={{ height: 80, width: 80 }}
              onPress={() => console.log("Works!")}
            />
            <View>
              <Text
                style={{
                  fontSize: 25,
                  fontWeight: "bold",
                  color: "green",
                  marginHorizontal: 6
                }}
              >
                לאשר
              </Text>
            </View>
          </TouchableOpacity>
        </View>
        <InfoTable headerInfo={this.state.title}></InfoTable>
      </>
    );
  }
}

您可以像这样放置函数

<TouchableOpacity onPress={() => this.postData()}> .... </TouchableOpacity>