You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native Android按钮onPress事件无响应问题求助

问题分析与解决

问题根源

你的代码里Button组件的onPress属性写了logIt(),这会在组件渲染时就立即执行logIt函数,所以启动项目后控制台自动打印了Foobar。而点击按钮时,onPress实际拿到的是logIt()执行后的返回值(这里是undefined),自然不会触发任何操作。

修复方案

你需要把函数引用传递给onPress,而不是执行函数后的结果,有两种写法:

  • 直接传递函数名(无参数时推荐):
onPress={logIt}
  • 用箭头函数包裹(需要传递参数时使用):
onPress={() => logIt()}

修改后的完整代码

/**
 * Sample React Native App
 * https://github.com/facebook/react-native
 *
 * @format
 */

import React from 'react';

import {
  SafeAreaView,
  Button
} from 'react-native';

function logIt(){
  console.log("Foobar");
}

function App(): JSX.Element {
  return (
    <SafeAreaView>
      <Button
        title="Logit"
        accessibilityLabel="log it"
        onPress={logIt}
        color="blue"
      />
    </SafeAreaView>
  );
}

export default App;

内容的提问来源于stack exchange,提问作者n.r.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 19:34:51