Angular 8集成ngx-pagination报错:无法导入ChangeDetectionStrategy
解决Angular 8中使用ngx-pagination的导入错误问题
出现Can't import the named export 'ChangeDetectionStrategy' from non EcmaScript module错误的核心原因是:你安装的最新版ngx-pagination依赖的Angular版本高于8,且使用了Angular 8构建链不支持的ES模块导出语法。由于无法升级Angular主版本,可通过以下步骤解决:
具体解决方案
- 卸载当前安装的不兼容版本:
npm uninstall ngx-pagination # 若使用yarn则执行: # yarn remove ngx-pagination - 安装与Angular 8兼容的旧版本ngx-pagination(经测试,v5.x系列完全兼容Angular 8,推荐安装该系列的最新稳定版):
npm install ngx-pagination@5.1.1 --save # 若使用yarn则执行: # yarn add ngx-pagination@5.1.1 - 重新在
app.module.ts中导入模块(代码无需修改,保持原导入方式即可):import { NgxPaginationModule } from 'ngx-pagination'; @NgModule({ imports: [ // ...其他模块 NgxPaginationModule ] }) export class AppModule { } - 若仍存在导出相关警告,可调整
tsconfig.json的编译选项:
在compilerOptions中添加或确保以下配置:{ "compilerOptions": { "allowSyntheticDefaultImports": true, "esModuleInterop": true } }
注意事项
- 不要随意升级TypeScript版本:Angular 8对应的TypeScript版本范围是3.4.x~3.5.x,过高的TypeScript版本会引发额外兼容问题。
- 若后续需要使用ngx-pagination的新特性,只能在允许升级Angular版本后再考虑更新依赖。
内容的提问来源于stack exchange,提问作者JDev
相关产品推荐
相关产品推荐

