我已经闲逛了几个小时,但是无法正常工作。我想在我的应用程序中导入SimpleBar,但失败了。
我设法使npm软件包在今天早些时候开始工作,但是在调整大小时存在一些奇怪的问题,并且由于npm软件包仅随附缩小版本,因此我求助于“真正的东西”。
我正在尝试将其包装在这样的指令中
import {
Directive,
Input,
ElementRef,
AfterViewInit
} from '@angular/core';
import { SimpleBar } from 'simplebar';
@Directive({
selector: '[simpleBar]'
})
export class SimpleBarDirective implements AfterViewInit {
constructor(private elementRef: ElementRef) { }
ngAfterViewInit() {
new SimpleBar(this.elementRef.nativeElement, {
autoHide: true
});
}
};
但是,这给了我上面的错误信息。幸运的是,我设法启动并运行Plunker,它显示了完全相同的错误。
我在这里想念什么?
最佳答案
问题
在src/simplebar
中,您通过执行export default class SimpleBar{....}
声明导出为默认,然后使用import {SimpleBar} from 'simplebar'
导入
您只能通过不带括号的import SimpleBar from 'simplebar'
导入默认导出。
当您想从文件中导入多个内容时,可以使用括号导入样式,例如-import {SimpleBar, SimpleDialog, SimpleModal} from 'simplethings'
这样,文件中就不会导出default
。
解决方案
使用import SimpleBar from 'simplebar'
或在default
中的类导出中删除src/simplebar
修饰符