我使用VS模板创建的Angular 2 ASP.NET Core应用程序中的Polyfills.ts是否缺失?

Van*_*nel 4 asp.net-core angular

我是Angular开发的新手,我正在使用Visual Studio 2017 Professional模板开始使用ASP.Net Core创建一个Angular 2应用程序: 在此输入图像描述

我的问题是该应用程序无法在Internet Explorer 11上运行并且搜索我发现我必须取消注释polyfills文件中的内容.

我已经找到它,D:\MyProjects\NetCore\AngularWebApplication\AngularWebApplication\node_modules\graceful-fs\polyfills.js但它没有预期的相同内容(就像在这个SO答案中显示的那样).

使用VS模板是一个好主意,或者我可以使用Empty模板并添加Angular应用程序吗?

Jas*_*onB 6

我遇到了同样的问题 - 幸运的是修复很简单.

将您的polyfills.ts文件放在与文件相同的目录中boot.browser.ts(我ng new test-app在临时目录中运行命令只是为了获取最新文件),而不是在boot.browser.ts文件顶部添加以下行: -

import './polyfills';

然后,您必须删除polyfills.ts文件中注释掉的位以包含要支持的浏览器所需的导入,还要运行npm install所需的命令(如行中注释中所指定polyfills.ts).

那应该为你解决IE11问题.

您提到使用Empty模板然后使用创建应用程序ng new,但是在Visual Studio中使用它(和调试)并不是一项简单的任务,因此如果您沿着该路线走下去,最好使用VS Code.如果你可以部署到支持的环境中.net corenode.js,那么你可能会更好使用.NET的核心角模板.


Die*_*ego 5

如果你没有polyfills.ts文件阅读这个

你必须打开ClientApp-->boot.browser.ts文件。

在第 2 行下

导入'zone.js';

添加这个

/** 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/set';

/***********added*************/
Run Code Online (Sandbox Code Playgroud)

这应该有效


归档时间:

查看次数:

1999 次

最近记录:

7 年,8 月 前