我有一个用例,其中React引用很有意义。
我尝试了几种不同的实现方式,在这种情况下,将它们与Hammerjs集成在一起。
我主要是解决这个问题:
adding hammerjs to a react js component properly
我在渲染器中的return方法是这样的:
return (
<div className={"App card-row card-color " + this.props.className} ref={
(el) => this._slider = el
}>
{this.state.bubblemsg ? (
<NotifBubble message={this.state.bubblemsg} merchant={this.props.merchant.merchant}/>
) : (
null
)}
<ScrollMenu
data={this.state.list}
inertiaScrolling={true}
transition={.1}
inertiaScrollingSlowdown={.000001}
/>
</div>
);
我认为会将div元素作为参考。
然后在我的componentDidMount()方法中,将其附加到锤子上:
componentDidMount() {
this.hammer = Hammer(this._slider)
this.hammer.on('swipeleft', console.log("swipe left"));
this.hammer.on('swiperight', console.log("swipe right"));
}
但是,我遇到了错误:
TypeError: Cannot read property 'addEventListener' of undefined
这与Hammer直接相关,因此也是我假定的参考。
那么我的参考文献有什么错呢?我不完全了解它们应该如何工作,React教程的解释也不是很清楚,因此进行详尽的解释会很有用。
答案 0 :(得分:0)
我认为问题在于,在听锤子时,您必须传递一个要调用的函数,尝试插入箭头函数进行记录
`couldn't connect to "xxxxxxx": googleapi: Error 400: Missing parameter: project., required`