问题标签 [angular7]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
107759 浏览

angular - Angular 2/4/6/7 - 使用路由器进行单元测试

在 Angular 2.0.0 中,我正在对使用路由器的组件进行单元测试。但是我得到“提供的参数与调用目标的任何签名都不匹配”。错误。在 spec.ts 的 Visual Studio 代码中,新 Router() 以红色突出显示

如果有人能让我知道正确的语法是什么,我真的很感激?提前致谢。我的代码如下:

规格

组件构造函数

0 投票
5 回答
64842 浏览

angular - 如何在 Angular cli 中启用 gzip 压缩以进行生产构建

我想压缩构建angular项目时创建的捆绑文件。我ng build --environment=${environment}目前用来构建应用程序的版本"@angular/compiler-cli": "^4.0.0"不生成.gz 文件到 dist 文件夹。生成.gz捆绑文件的最简单方法是什么(最好不接触webpack.config.js文件)?PS:我知道创建.gz文件的选项在某个时候被 angular/cli 团队删除了。但是我非常需要它,因为我的捆绑文件很大。

0 投票
1 回答
1063 浏览

angular - 角度 4 _ 如何动态更改谷歌地图 api 密钥

我在我的应用程序中使用谷歌地图 API,如下所示:

在 index.html 中使用 api 键导入 url:

并在组件中像这样声明 google:

并在这样的组件中使用它:

如何动态更改 index.html 中存在的 API 密钥?

0 投票
2 回答
4273 浏览

angular - 带有延迟加载路由的 Angular CLI HMR 热重载整个事情

(即使使用 Angular 7 也确认了一个问题)。让我们解决这个问题!

我正在使用此处设置的 HMR:https ://github.com/angular/angular-cli/wiki/stories-configure-hmr来自全新ng new版本。

如果我更改任何组件并使其延迟加载,角度 HMR 将热重新加载所有内容,从而使页面同步变慢。

我知道这一点,因为它默认设置console.log为正在重新加载的每个模块,并且当我使用惰性路由时,它会记录所有内容。但是当我将该组件更改为非延迟加载时,它只会记录一些小组件。

因此,当我使用 HMR 和惰性路由时,我的应用程序需要几秒钟才能刷新。这很烦人。

有没有办法解决?

(延迟加载路线是通过这样的事情来完成的)

(只是一个例子来说明我正在以正确的方式延迟加载)

这里有一些日志显示当我延迟加载时会发生什么home.component.ts

0 投票
2 回答
1941 浏览

angular6 - 如何使用 Angular 2、4、5、6、7、8、9 创建层次结构

我想使用Angular 2 或 Angular 4从 json 文件创建层次结构。位置的层次结构可能会根据要求而改变。谁能建议我如何创建所需的模板。下面提到了可能的情况。

文件名:location.json

情况1

0 投票
1 回答
8802 浏览

angular - Angular 组件默认样式 css 显示块

我厌倦了我所有的角度元素都是 0x0 像素,因为它们具有 app-card、app-accordion 之类的名称,浏览器无法将其识别为符合 HTML5 的元素,因此不会提供任何默认样式。

这意味着在 Chrome 中检查它时,我看不到容器的尺寸,当 DOM 真的很深时,很难理解哪个元素包含屏幕上的哪个区域等。

我觉得默认情况下所有角度元素都应该块显示是合乎逻辑的,因为对于大多数人来说,这是有道理的。

例如,考虑这些元素

包含

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

所以 bbs-accordion-header 没有任何维度,即使它的孩子确实有它们。

我通过手动向每个元素 .scss 文件添加一行来解决这个问题

但是每次手动添加这个非常繁琐。有谁知道更好的解决方案?

0 投票
5 回答
17642 浏览

angular - Angular 6+:在非根模块中提供导致循环依赖

我正在尝试通过新providedIn属性提供解析服务。

这是我在受保护模块中使用的翻译解析器:

我在受保护的路由模块中声明了翻译解析器服务:

由于我导入(打字稿导入)protected.module为了translations-resolver.service.ts providedIn属性中使用它,我在检测到循环依赖项中收到警告:

由于该providedIn属性,添加了第二条路径(protected/protected.module.ts)。

我可以通过提供translationsResolveras a NgModule provider(在 providers 数组中)来解决这个问题,但我更喜欢它作为injectable提供者。

有什么解决这个问题的建议吗?

0 投票
1 回答
10114 浏览

html - 在 Angular 7 中,下拉菜单的默认选择值并不直接

我最近一直在使用 Angular 7,并在尝试显示下拉列表并在此列表中显示默认值时发现了一些奇怪的事情。这里分别是两个单独的列表:

示例.component.html

我发现上面的代码在我的浏览器中显示了以下内容:

在此处输入图像描述

注意上面的默认值是如何设置的,但是在下一个下拉菜单中没有设置默认值:

示例.component.html

浏览器显示以下内容:

在此处输入图像描述

为什么第二个下拉列表没有填充默认值,同时遵循相同的语法?通过搜索和阅读文档,我推测 [ngValue] 设置了下拉列表的默认值,这似乎适用于第一个下拉列表。有没有更好的方法来设置默认选择?

0 投票
1 回答
5610 浏览

html - 没有 ngmodel 指令的两种方式数据绑定

我在控制台中看到 ngmodel 已弃用,将在 Angular 7 上删除。我有一个指令使用它进行双向数据绑定,我怎么能做到这一点[(ngmodel)]

HTML:

0 投票
3 回答
479 浏览

angular - 如何创建 Angular 7 beta 项目?

为这个超级基本的问题道歉,但是创建 Angular 7 beta 项目的正确方法是什么?

你可以用 CLI 做到这一点吗?