Angular11使用angular-datatables出现ɵɵFactoryDeclaration报错如何解决
问题解决方法
根因说明
该报错是angular-datatables版本与本地Angular 11环境不兼容导致的。默认安装的最新版angular-datatables适配Angular 12及以上版本,依赖Angular 12新增的内部编译API(报错中ɵɵ开头的成员就是这类API),Angular 11不存在对应导出,因此触发TS2694错误。
具体修复步骤
- 第一步:卸载已安装的不兼容版本angular-datatables
npm uninstall angular-datatables
- 第二步:安装适配Angular 11的指定版本angular-datatables,该库大版本与Angular版本一一对应,Angular 11使用11.x系列版本即可
npm install angular-datatables@11.2.0 --save
- 第三步:清理缓存并重启开发服务
npm cache clean --force ng serve
可选验证配置
如果服务启动无报错但表格功能异常,检查angular.json中是否已引入对应静态资源:
{ "build": { "options": { "styles": [ "node_modules/datatables.net-dt/css/jquery.dataTables.css", "src/styles.css" ], "scripts": [ "node_modules/jquery/dist/jquery.min.js", "node_modules/datatables.net/js/jquery.dataTables.js" ] } } }
配置完成后重启服务,即可正常在项目中引入DataTablesModule使用angular-datatables功能。
内容的提问来源于stack exchange,提问作者Nanthagopal
相关产品推荐
相关产品推荐

