React 暴露组件函数

2023-12-30

基于此链接上的示例http://reactjs.cn/react/tips/expose-component-functions.html http://reactjs.cn/react/tips/expose-component-functions.html,我一直在尝试简化代码以更好地理解公开的方法,所以我得到了以下内容,但不起作用,错误是“Uncaught TypeError:无法读取未定义的属性'animate'”,我真的不知道原因:

var Todo = React.createClass({
    render: function() {
        return <div></div>;
    },

    //this component will be accessed by the parent through the `ref` attribute
    animate: function() {
        console.log('Pretend  is animating');
    }
});


var Todos = React.createClass({

    render: function() {
        return (
                <div>
                    <Todo ref='hello' />
                    {this.refs.hello.animate()}
                </div>
        );
    }
});

ReactDOM.render(<Todos />, app);

您在第一个渲染中没有对该元素的引用,因为它尚未安装。

你可以做这样的事情来让它工作:

var Todos = React.createClass({
    componentDidMount: function() {
        this.refs.hello.animate();
    },
    render: function() {
        return (
                <div>
                    <Todo ref='hello' />
                </div>
        );
    }
});

componentDidMount当组件已经被渲染(第一次)时调用。在这里您将获得对该元素的引用

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React 暴露组件函数 的相关文章

随机推荐

  • 如何仅使用JavaScript将base64编码的图像数据上传到S3?

    我在 Heroku cedar env 上有一个 Rails 应用程序 它有一个页面 我使用它将画布数据渲染到图像中toDataURL 方法 我正在尝试使用 JavaScript 将返回的 base64 图像数据字符串直接上传到 s3 绕过
  • 在 GCP 中指向并使用子域 [关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 我有一个主域www example comAWS 上的 Route 53 中的设置 我想指点一下subdomain1 example
  • Grails 2.3.0 和 mysql 连接超时

    我有一个 Grails 2 2 3 应用程序 使用此配置连接到 mysql 数据库 production dataSource dbCreate update one of create create drop update url jdb
  • 导入错误:没有名为“paramiko”的模块

    我已经在这里完成了网上的其他问题 我觉得我的问题足够不同 值得提出一个新问题 所以我有一个Centos 6 box 它正在为我运行一个小网站 充当办公室 git 服务器 我正在尝试配置Python3 on it 所以我遵循以下这些步骤 ht
  • 不支持 Android 身份验证方案 ntlm

    我使用 asynchttpClient 进行基本身份验证 http loopj com android async http http loopj com android async http 那是 loj lib 下面是我的代码 用户名随
  • 数组中的元素太多!

    抱歉 如果这是一个菜鸟问题 一段C代码 int array 5 int cnt for cnt 0 cnt lt 10 cnt 1 array cnt cnt 应该会报错吧 不 工作正常 但这是为什么呢 看起来 在第一行 定义了一个大于双倍
  • Firebase 功能:在 stackdriver 控制台中使用 Winston 进行日志记录

    我无法使winston https github com winstonjs winston记录器写入日志堆栈驱动程序 https cloud google com logging 安慰 我将我的函数部署为 google firebase
  • 如何修复本机客户端错误“连接正忙于处理另一个命令的结果”?

    我得到了一个Connection Busy With Results From Another Command当 SSIS 包运行时 来自 SQL Server Native Client 驱动程序的错误 仅当与 SQLServer 200
  • Libgdx Scene2d - 设置演员( TextField )填充?

    我在设置填充或类似于演员的东西时遇到了麻烦 找不到路 我想我可能必须在皮肤中添加一些东西 我有这个文本字段 textboxskin new Skin textboxskin add textfieldback new Texture dat
  • 如何在android中使用XML布局在图像视图中为图像制作圆角

    我已经尝试了很多次 但我知道我错过了一些东西 你们能解释一下吗 以下是我尝试过的
  • 对象是空的吗? [复制]

    这个问题在这里已经有答案了 检查对象是否为空的最快方法是什么 有没有比这更快更好的方法 function count obj obj var i 0 for var key in obj i return i 对于 ECMAScript5
  • 避免非虚拟析构函数的对象切片

    我正在为智能指针编写代码作为练习 使用在线教程 1 http www davethehat com articles smartp htm 2 http www codeproject com Articles 15351 Implemen
  • 你能在 mdbg 中看到评估堆栈吗?

    假设我有以下 CIL ldc i4 40 lt a breakpoint is set here ldc i4 2 add box int32 call void mscorlib System Console WriteLine stri
  • 使用 Android 提交至 Google 电子表格表单

    第一次在这里提问 通常我不用问就能找到答案 但这一次我陷入了困境 无法弄清楚我错过了什么 我只是想让我的 Android 应用程序在网站上填写表格并提交 我不需要应用程序对发回的任何数据执行任何操作 只需填写表格并提交即可 基本上我正在尝试
  • Dalvik JIT 工作流程

    我对 dalvik vm Android 感兴趣 我试图通过 JIT 的代码来找出它执行的操作以及它如何选择跟踪 我无法遵循代码 因此 我请求所有人帮助我建议 JIT 中执行跟踪选择和翻译的相关函数 你可以尝试 git log grep J
  • 调用命令行程序的Web应用程序框架

    我们正在设计一个 Java EE Web 应用程序 在 tomcat 上运行 它旨在成为命令行程序的网络界面 是否有任何框架 应用程序允许这样做 即 JSP 页面将在内部向安装在与 Tomcat 服务器相同的服务器上的程序发出命令 命令行是
  • 左连接和左外连接的区别

    我想知道mySQL中的LEFT JOIN和LEFT OUTER JOIN是否有什么区别 如果没有区别那为什么会有两种不同的方式呢 提前致谢 它们是相同的 我认为您想要放入 外部 的唯一原因是为了清楚起见 为了澄清联接中的第一个表不需要它在第
  • extjs 面板适合布局

    我有一个面板 我正在将它渲染到一个容器中 我想要panel以适应containerheight 并且不想指定高度panel 但似乎不起作用 有什么办法可以做到吗 代码片段 div style width 100 height 100 div
  • 将 CellRendererToggle 的单行设置为不一致

    在 Gtk 3 上 我使用的是TreeModel存储嵌套信息并用 a 显示它CellRendererText and a CellRendererToggle 用户可以单击每个切换按钮 当存在嵌套按钮并且它们不处于相同状态时 我希望上层按钮
  • React 暴露组件函数

    基于此链接上的示例http reactjs cn react tips expose component functions html http reactjs cn react tips expose component function