2017-10-18 51 views
3

我试图将捕鼠器导入一个简单的键盘绑定的反应项目。我通过纱线安装了捕鼠器。我没有导入任何错误,但是当我尝试使用它时,Mousetrap库对象是未定义的。这是从我的主App.tsx组件在React项目中导入捕鼠器 - 无法读取未定义的属性'绑定'

import Mousetrap from 'Mousetrap'; 

export default class App extends React.Component { 
componentDidMount() { 
    Mousetrap.bind(['left'], dataStore.pagination.prev()); 
    Mousetrap.bind(['right'], dataStore.pagination.next()); 
} 

componenentDidUnmount() { 
    Mousetrap.unbind('left', dataStore.pagination.prev()); 
    Mousetrap.unbind(['right'], dataStore.pagination.next()); 
} 

public render() { 

这是我得到的错误。 error

我也尝试启动一个Mousetrap对象来使用,但我得到这个错误(加上没有什么文件说我需要)。

const mousetrap: Mousetrap = new Mousetrap(); 

error

我使用的反应,打字稿,mobx,材料,用户界面和其他几个库,我很新的全部。任何意见将是有益的。

谢谢, 迈克 -

回答

1

捕鼠器没有命名的出口,让你的名为import语句将导致undefined。您可以使用以下导入库:

import * as Mousetrap from 'Mousetrap'; 
+0

优秀。那样做了。有没有什么我可能已经错过了文件,这将表明这一点?我一直在浏览https://craig.is/killing/mice – user3380406

+1

文档中的任何内容,因为可能是在命名导入/导出之前编写的,只是在主入口文件中查看它是如何实现的 – hackerrdave

相关问题