找不到Angular4.x模块:错误:无法解析'classlist.js'

May*_*shP 14 typescript angular-cli angular

当我删除polyfills.ts中的注释部分以便在Internet Explorer中加载页面时填充页面

/** IE9, IE10 and IE11 requires all of the following polyfills. **/
 import 'core-js/es6/symbol';
 import 'core-js/es6/object';
 import 'core-js/es6/function';
 import 'core-js/es6/parse-int';
 import 'core-js/es6/parse-float';
 import 'core-js/es6/number';
 import 'core-js/es6/math';
 import 'core-js/es6/string';
 import 'core-js/es6/date';
 import 'core-js/es6/array';
 import 'core-js/es6/regexp';
 import 'core-js/es6/map';
 import 'core-js/es6/weak-map';
 import 'core-js/es6/set';
 import 'reflect-metadata';
/** IE10 and IE11 requires the following for NgClass support on SVG elements */
 import 'classlist.js';  // Run `npm install --save classlist.js`.

/** Evergreen browsers require these. **/
import 'core-js/es6/reflect';
import 'core-js/es7/reflect';


/**
 * Required to support Web Animations `@angular/animation`.
 * Needed for: All but Chrome, Firefox and Opera. http://caniuse.com/#feat=web-animation
 **/
 import 'web-animations-js';  // Run `npm install --save web-animations-js`.
Run Code Online (Sandbox Code Playgroud)

但是,如果我们使用角度cli构建.它在控制台中抛出错误我在项目"npm install --save classlist.js"中运行了此命令

Module not found: Error: Can't resolve 'classlist.js' in src
 @ ./src/polyfills.ts 36:0-22
 @ multi ./src/polyfills.ts
Run Code Online (Sandbox Code Playgroud)

请建议解决方案

Dan*_*zer 29

删除当前包,

npm uninstall classlist.js --save
Run Code Online (Sandbox Code Playgroud)

然后运行

npm cache verify
Run Code Online (Sandbox Code Playgroud)

然后跑

npm install classlist.js --save-exact
Run Code Online (Sandbox Code Playgroud)


Man*_*uro 7

您正在导入默认情况下未包含的填充.您必须先将其安装为依赖项.如何做到这一点是在导入它的同一行评论:

// Run `npm install --save classlist.js`.
Run Code Online (Sandbox Code Playgroud)

这同样适用于在web-animations-js填充工具,如果你还没有这样做的话.