react组件绑定事件无法触发

问题

自己写了一个组件SortNavItem,然后在SortNav组件里引用该组件,并绑定onClick事件,无法触发。
如果将onClick事件在SortNavItem里面的元素上,则可以触发!

代码

<SortNavItem>
<SortNav>

疑问

事件不能绑定在引入的组件上,只能绑定在元素上?但是我参考的<Tabbar>的写法是能正常触发的!

阅读 5.7k
1 个回答

react/weui TabBarItem源码,请看...others,这里面包含了onClick,最终还是被加到了元素上,所以组件里的任何属性都是用于传递都props,并不能绑定事件

render() {

        const {children, className, active, icon, label, ...others} = this.props;
        const cls = classNames({
            'weui-tabbar__item': true,
            'weui-bar__item_on': active
        }, className);

        if (icon || label){
            return (
                <div className={cls} {...others}>
                    {icon ? <TabBarIcon>{icon}</TabBarIcon> : false}
                    {label ? <TabBarLabel>{label}</TabBarLabel> : false}
                </div>
            );
        } else {
            return (
                <div className={cls} {...others}>
                    {children}
                </div>
            );
        }
    }
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题