对象没有';t支持属性或方法';分配';-使用angular4时的ie11
我正在为我的项目使用angular4,当我第一次遇到这个错误时,我发现一些博客要求我安装object assign并在项目中使用。因此,我使用npm install object assign--save命令安装了object assign,并在polyfill.ts文件中引用它,如下所示对象没有';t支持属性或方法';分配';-使用angular4时的ie11,angular,assign,Angular,Assign,我正在为我的项目使用angular4,当我第一次遇到这个错误时,我发现一些博客要求我安装object assign并在项目中使用。因此,我使用npm install object assign--save命令安装了object assign,并在polyfill.ts文件中引用它,如下所示 import 'object-assign'; import 'core-js/es6/reflect'; import 'core-js/es7/reflect'; 然后我使用这个命令构建项目 ng bu
import 'object-assign';
import 'core-js/es6/reflect';
import 'core-js/es7/reflect';
然后我使用这个命令构建项目
ng build --prod --env=prod
但即使在重新引用这个文件后,我也会得到这样的错误
import 'object-assign';
import 'core-js/es6/reflect';
import 'core-js/es7/reflect';
我怎么解决这个问题,我错过了什么吗
我可以在除IE11之外的所有其他浏览器中看到该应用程序
只需稍微阅读polyfills.ts文件的注释行,我发现已经有了使应用程序IE11兼容所需的所有文件,我们所要做的就是对以下内容取消注释,并按预期工作。这是polyfills.ts文件
/**
* This file includes polyfills needed by Angular and is loaded before the app.
* You can add your own extra polyfills to this file.
*
* This file is divided into 2 sections:
* 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers.
* 2. Application imports. Files imported after ZoneJS that should be loaded before your main
* file.
*
* The current setup is for so-called "evergreen" browsers; the last versions of browsers that
* automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera),
* Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile.
*
* Learn more in https://angular.io/docs/ts/latest/guide/browser-support.html
*/
/***************************************************************************************************
* BROWSER POLYFILLS
*/
/** 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';
/** 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`.
/***************************************************************************************************
* Zone JS is required by Angular itself.
*/
import 'zone.js/dist/zone'; // Included with Angular CLI.
/***************************************************************************************************
* APPLICATION IMPORTS
*/
/**
* Date, currency, decimal and percent pipes.
* Needed for: All but Chrome, Firefox, Edge, IE11 and Safari 10
*/
// import 'intl'; // Run `npm install --save intl`.
/**
* Need to import at least one locale-data with intl.
*/
// import 'intl/locale-data/jsonp/en';
您正在使用angular cli吗?在
polyfills.ts
文件中,必须将某些polyfills导入到项目中,您必须取消对几乎所有内容的注释。我假设您要查找的是core js/es6/object
。我也遇到了同样的问题,但找不到polyfills.ts。虽然polyfills.js存在,但它与您在此处显示的不同。。。有什么想法吗??“ur angular app folder”/src/polyfills.ts对于那些在取消注释后仍在挣扎的人来说,很好的答案可能是因为您需要添加import./polyfills.ts'
在boot.browser.ts文件(适用于使用Visual Studio 2017的用户)中,并且此导入必须位于顶部,即在zone.js或bootstrap等之前@CodeWarrior。我在取消注释后仍然遇到问题,并且我没有使用visual studio。可以解释更多吗?@samuelkavinlonoganathan Hey mate,正如我在上面的评论中提到的,在取消注释后,您需要添加import./polyfills.ts'代码>在您正在使用的IDE的boot.browser.ts等效文件中。对于我来说,使用Visual Studio 2017的是boot.browser.ts。你试过了吗?