【发布时间】:2016-10-07 12:05:50
【问题描述】:
我正在尝试使用覆盖 nova-base-components 的 react ES6 组件创建一个基于望远镜 nova 的新应用程序,但我无法使用 tab 组件。我收到此错误
未捕获的 TypeError: (0 , _jquery2.default)(...).tab 不是函数
<div className="ui top attached tabular menu" ref="tabsMenu">
<div className="active item" data-tab="description">Description</div>
<div className="item" data-tab="elevator">Elevator Pitch</div>
<div className="item" data-tab="market">Market Analysis</div>
<div className="item" data-tab="value">Value Proposition</div>
</div>
<div className="ui bottom attached active tab segment" data-tab="description">
<div dangerouslySetInnerHTML={createMarkup(cleanMarkup(idea.body))}>
</div>
</div>
<div className="ui bottom attached tab segment" data-tab="elevator">
<p>elevator</p>
</div>
<div className="ui bottom attached tab segment" data-tab="market">
<p>marketAnalysis</p>
</div>
<div className="ui bottom attached tab segment" data-tab="value">
<p>valueProposition</p>
</div>
在componentDidMount 我用这段代码初始化标签
$('.ui.top.attached.tabular.menu .item').tab();
我已将semantic:ui-css 添加到项目中,并在我使用它的包中(仅在客户端中)。我还使用了组件 - 所以生命周期事件被触发。
关于我做错了什么有什么想法吗?
【问题讨论】:
-
我不知道这个建议是否适用于这种特定情况,但我通常会尽量避免将任何 jQuery 插件与 React 一起使用,并尝试找到做同样事情的纯 React 组件,如果可能的话?
-
是的,你完全正确。但在这种情况下,我被要求使用语义 ui,并且,AFAIK,它带有 jquery。似乎有一个项目试图做与 react-bootstrap 相同的项目,但它并不成熟
标签: meteor reactjs semantic-ui telescope