在Angular 12中,IE 11不再被支持,因此在Angular 12中运行时会出现以下错误消息:“@@toPrimitive 必须返回一个原始值”。
解决这个问题的一种方法是使用polyfill来修复@@toPrimitive的问题。
首先,安装core-js库:
npm install core-js
然后,在polyfills.ts文件中添加以下代码:
import 'core-js/es/symbol';
import 'core-js/es/object';
import 'core-js/es/function';
import 'core-js/es/parse-int';
import 'core-js/es/parse-float';
import 'core-js/es/number';
import 'core-js/es/math';
import 'core-js/es/string';
import 'core-js/es/date';
import 'core-js/es/array';
import 'core-js/es/regexp';
import 'core-js/es/map';
import 'core-js/es/weak-map';
import 'core-js/es/set';
import 'core-js/es/reflect';
最后,在main.ts文件中添加以下代码:
import 'core-js/es/symbol/iterator';
这样就可以修复@@toPrimitive的问题,并在Angular 12中在IE 11上运行。