首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【17】进大厂必须掌握的面试题-50个Angular面试

Angular,什么是字符串插Angular的字符串插是一种特殊的语法,它在双花括号 {{}}中使用模板表达式来显示组件数据。它也称为小胡子语法。...顾名思义,它们控制数据如何服务器流到HTML UI。 10. Angular的范围是什么? Angular的范围是一个引用应用程序模型的对象。它是表达式的执行上下文。...是的,Angular确实支持嵌套控制器的概念。需要以层次方式定义嵌套控制器,以便在视图中使用它。 17.如何区分Angular表达式和JavaScript表达式?...这些模块通常包含组件,服务提供商和其他代码文件,其范围由包含的NgModule定义。有了模块,代码变得更加可维护,可测试和易读。同样,应用程序的所有依赖关系通常仅在模块定义。...31.通过对Angular进行脏检查,您了解什么? 在Angular,摘要过程称为脏检查。之所以调用它,是因为它扫描整个范围进行更改。换句话说,它将所有新的作用域模型与以前的作用域进行比较。

41.1K51

Angular系列教程-第五节

NgModule 的元数据会做这些: 声明某些组件、指令和管道属于这个模块。 公开其中的部分组件、指令和管道,以便其它模块组件模板可以使用它们。...@NgModule 获取一个元数据对象,它会告诉 Angular 如何编译和启动本应用。 declarations —— 该应用所拥有的组件。...这些可声明的类在当前模块是可见的,但是对其它模块组件是不可见的 —— 除非把它们当前模块导出, 并让对方模块导入本模块。...1.1根模块和特性模块 应用最少有一个模块(根模块) 特性模块是用来对代码进行组织的模块。 2.服务和依赖注入 服务是一个广义的概念,它包括应用所需的任何、函数或特性。...狭义的服务是一个明确定义了用途的类。它应该做一些具体的事,并做好。 Angular组件和服务区分开,提高模块性和复用性。

2.9K20
您找到你想要的搜索结果了吗?
是的
没有找到

如何在 Windows 上安装 AngularAngular CLI、Node.js 和构建工具指南

Angular CLI, Node.js, and Build Tools,作者为Ahmed Bouchefra 在本教程,我们将学习如何在 Windows 安装 Angular CLI 并使用它来创建...build (b): 将 Angular 应用程序编译到给定输出路径上名为 dist/ 的输出目录。必须工作空间目录执行。 config: 检索或设置 Angular 配置。...lint (l): 在给定项目文件Angular 应用程序代码上运行 linting 工具。 new (n): 创建一个新的工作区和一个初始的 Angular 应用程序。...之后,您将使用目录结构和一堆配置和代码文件创建项目。它将主要采用 TypeScript 和 JSON 格式。...结论 在本教程,我们了解了如何在 Windows 计算机上安装 Angular CLI,并使用它从头开始初始化一个新的 Angular 项目。

10800

一个Angular 5教程:一步一步指导实现你的第一个Angular 5应用程序

以下是Angular如何知道如何找到与我们的标签相对应的组件。显然,templateUrl并且styleUrls定义Angular应该哪里获取我们的标记和CSS。...因此,我们只需编写简单的代码即可获取我们的价值,并将其绑定到代码的输入和变量。...哈希#form是一个模板引用变量,我们可以用它来访问我们的代码的表单。...通过使用它,我们确保我们的数据流一旦发生this.alive错误就会停止发布新,并且我们只需在该onDestroy组件的函数设置该。...如果我们About在应用程序需要一个页面会怎么样 我们如何将它添加到我们当前的代码库?显然,该页面应该是一个组件(与Angular的其他内容一样)。我们来生成这个组件

42.5K10

Angular 5.0.0发布!

首先,把你应用的某些部分标记为 pure,以便原有工具利用它改进“tree shaking”的优化效果,同时删除应用不必要的东西。 其次,构建优化器会你的应用删除Angular装饰器代码。...我们的目标是让AOT编译快到能开发者用它开发的程度。现在,我们已经冲进了2秒以内,因此将来的CLI可能会默认开启AOT。...exportAs 组件和指令增加了对多名称的支持。这有助于用户实现无痛迁移。通过把指令导出为多个名称,可以在不破坏原有代码的情况下在Angular语法中使用新名称。...HttpClient受到了开发者的广泛赞誉,因此我们推荐在所有应用中使用它,放弃之前的 @angular/http library。...我们还修改了使用 .tsconfig文件的方式,更严格地遵守TypeScript标准。

4.3K40

Angular: 最佳实践

在应用程序的 tsconfig.json 文件,我们可以设置这个标志,告诉编辑器在未明确类型时候抛出错误。否则,编辑器坚定它无法推断变量的类型,而认为是 any 类型。..., status: Statuses.Read} ]; } 复制代码 所以,现在我们有一个基本组件(实际上就是一个容器),我们的组件可以从中派生重用应用程序的全局和方法。...现在,我们为使用表单的组件创建了一个单独的类(注意:AbstractFormComponent 是如何继承 AbstractBaseComponent ,因此我们不会丢失应用程序的)。...示例可能很多,比如,你的一个组件可能具有上传文件的功能,因此你需要将 JS File 对象的 Array 转换为 FormData 实例来执行上传。...模版到组件方法的委托比原始的逻辑更难。请注意,这里我用了比原始更难的词语,而不是复杂这个词。这是因为除了检查直接的条件语句之外,任何逻辑都应该写在组件的类方法,而不是写在模版

2.8K40

Node.js-具有示例API的基于角色的授权教程

下载或克隆教程项目代码 2.通过从项目根文件夹(package.json所在的位置)的命令行运行npm install来安装所有必需的npm软件包。...1.https://github.com/cornflourblue/angular-9-role-based-authorization-example下载或克隆Angular 9教程代码 2.通过从项目根文件夹...1.https://github.com/cornflourblue/react-role-based-authorization-example下载或克隆React教程代码 2.通过从项目根文件夹...共享的组件文件夹包含可以供应用程序的多个功能和其他部分使用的代码,并带有下划线前缀,将它们分组在一起,因此可以一目了然地轻松查看内容。...如果将角色参数留为空白,则路由将被限制到任何经过身份验证的用户,无论角色如何。在用户控制器中使用它来限制对“获取所有用户”和“按ID获取用户”路由的访问。

5.7K10

Angular 服务

本节课,你将创建一个 HeroService,应用的所有类都可以使用它获取英雄列表。...组件移除数据访问逻辑,意味着将来任何时候你都可以改变目前的实现方式,而不用改动任何组件。 这些组件不需要了解该服务的内部实现。 这节课的实现仍然会提供模拟的英雄列表。...添加 getHeroes() 创建一个函数,服务获取这些英雄数据。...你在根注入器把 HeroService 注册为该服务的提供商,以便在别处可以注入它。 你使用 Angular 依赖注入机制把它注入到了组件。...在组件的 ngOnInit 生命周期钩子调用 HeroService 方法,而不是构造函数。 你创建了一个 MessageService,以便在类之间实现松耦合通讯。

3.3K70

angular 2+组件 - 框架 - 集成 - 构建文档 - ckeditor5文文档

目前,Angular的CKEditor 5组件仅支持通过构建集成CKEditor 5。 由于缺乏在angular-cli调整webpack配置的能力,因此无法集成源构建的CKEditor 5。...虽然目前还没有支持代码集成CKEditor 5,但您仍然可以创建CKEditor 5的自定义构建并将其包含在Angular应用程序。...通过组件样式表设置高度 首先,在父组件的目录创建一个(S)CSS文件,并为给定编辑器的部分设置样式,前面是:host和::ng-deep伪选择器。...{     min-height: 500px; } 然后,将其添加到angular.json配置文件。...贡献和报告问题 Angular 2+的富文本编辑器组件的源代码可以在GitHub上的https://github.com/ckeditor/ckeditor5-angular中找到。

3.4K20

AngularDart 4.0 高级-管道 顶

你的管道有一个这样的参数:exponent。 为了告诉Angular这是一个管道,应用Angular库导入的@Pipe注解。 @Pipe注解允许您定义将在模板表达式中使用的管道名称。...]; } 异步管道将样板文件保存在组件代码。 该组件不必订阅异步数据源,提取已解析的并将其公开进行绑定,并且必须在其销毁时取消订阅(内存泄漏的有效来源)。...(s); }); } return _cachedData; } } 现在在一个线束组件中演示它,该组件的模板定义了对这个管道的两个绑定,都请求heroes.json文件的...JsonPipe 在前面的代码示例,第二个提取管道绑定显示了更多的管道链接。 它通过链接到内置的JsonPipeJSON格式显示相同的英雄数据。...下一步 管道是封装和共享常见显示转换的好方法。 像样式一样使用它们,将它们放入模板表达式丰富视图的吸引力和可用性。 在API参考中探索Angular的内置管道库。

6.3K20

【ASP.NET Core 基础知识】--前端开发--集成前端框架

良好的文档和社区支持: Angular具有详细而清晰的官方文档,并且有一个活跃的社区,开发者能够在社区获得帮助、分享经验和获取最新的信息。...单文件组件: Vue.js 支持单文件组件(.vue 文件),将模板、样式和逻辑组合在一个文件,使得组件的结构更清晰,开发更加高效。...配置 ASP.NET Core 提供静态文件: 在 ASP.NET Core 项目的 Startup.cs 文件的 Configure 方法添加以下代码来启用静态文件服务。...配置 ASP.NET Core 提供静态文件: 在 ASP.NET Core 项目的 Startup.cs 文件的 Configure 方法添加以下代码来启用静态文件服务。...配置 ASP.NET Core 提供静态文件: 在 ASP.NET Core 项目的 Startup.cs 文件的 Configure 方法添加以下代码来启用静态文件服务。

5400

Angular实战之使用NG-ZORRO创建一个企业级后台框架(进阶篇)

前言:   上一篇文章我们讲了如何在创建的Angular项目中快速引入ng-zorro-antd企业组件库,并且快速构建后台管理页面框架模板。...这一章主要介绍的是如何在创建好的后台管理页面框架的快速生成NG-ZORRO相关的组件,并且介绍Angular相关目录结构、生命周期函数,路由配置和使用相关知识点,以及如何使用Angular CLI使用一行代码快速添加.../cnpm第三方依赖包存放目录 |-- src // 应用源代码目录 |-- .editorconfig // 不同编译器统一代码风格 |-- .gitignore // git的忽略文件列表 |--...它允许你做以下这些事情: 创建一个新的 Angular 应用程序 运行带有 LiveReload 支持的开发服务器,以便在开发过程预览应用程序 添加功能到现有的 Angular 应用程序 运行应用程序的单元测试...2、配置首页组件路由(多模块路由完美解决): 首先,我们的博客项目存在博客管理和用户管理两个核心模块,我们创建了两个模块,那么我们如何在【app-routing.module.ts】应用路由文件配置多个模块的路由

3.9K20

Angular的12个经典问题,看看你能答对几个?(文末附带Angular测试)

Angular2组件中发生的任何改变总是当前组件传播到其所有子组件。如果一个组件的更改需要反映到其父组件的层次结构,我们可以通过使用事件发射器api来发出事件。...这通常用在setter,当类被更改完成时。 可以通过模块的任何一个组件,使用订阅方法来实现事件发射的订阅。...如何Angular 2应用程序中使用codelyzer? 所有企业应用程序都会遵循一组编码惯例和准则,更好的方式维护代码。...loadChildren会文件获取绝对路径。RouterModule.forRoot()会获取routes数组并配置路由器。 在子模块中导入模块特定路由。...感兴趣的同学,可以尝试构建一个“答题系统应用程序”,具体要求为: 有三个组成部分:测试视图、审查结果和显示结果 接受json格式的提问问题,你可以预定义的格式服务器发送jsonAngular2测试应用需要在客户端呈现出答题界面

17.3K80

现代web开发方法

单个页面应用程序向服务器发送一个HTML文件框架的请求,以及样式和脚本 与此同时,Ajax请求的形式向服务器发出后续请求。...对于MVC框架来说,它是一个关注点的分离 内容(Model) - 通常使用RESTJSON格式提供(负责把代码的与底层数据构成相关的代码组合在一起,包括对数据的存储和读取,也就是所谓的与后台约定返回的接口数据格式...,组合模式,策略模式等设计模式的组合应用下的产物,此刻论原生js的重要性..哈哈 一个服务器端的例子 这个例子展示了我们如何获取和渲染不同级别的用户列表 让我们获取用户的服务器端控制器开始,JSON...还包含处理应用的UI行为的功能 模板 - 包含特殊标签呈现内容的HTML文件 视图 - 与使用和功能的模板类似。...Ajax请求 - 将请求发送到服务器以便在不重新加载页面的情况下获取数据。

2.2K10

AngularDart4.0 英雄之旅-教程-06服务 顶

随着“英雄之旅”应用的发展,您将添加更多需要访问英雄数据的组件。 不是一遍又一遍复制和粘贴相同的代码,而是创建一个可重用的数据服务,并将其注入到需要它的组件。...创建一个英雄服务 利益相关者希望不同的页面各种方式展示英雄。 用户可以列表中选择一个英雄。 不久,您将添加一个仪表板与顶尖的表演英雄,并创建一个单独的视图编辑英雄的细节。...导入HeroService,以便您可以在代码用它。...每个接口都有一个方法。 当组件实现该方法时,Angular会在适当的时候调用它。 在“Lifecycle Hooks”页面详细了解生命周期挂钩。...将OnInit添加到由AppComponent实现的接口列表,并使用里面的初始化逻辑编写一个ngOnInit()方法。 Angular会在正确的时间调用它

2.9K10

Angular 入坑到挖坑 - 组件食用指南

一、Overview angular 入坑记录的笔记第二篇,介绍组件的相关概念,以及如何angular 通过使用组件来完成系统功能的实现 对应官方文档地址: 显示数据 模板语法 用户输入 组件之间的交互...在组件,通过使用 @Component 装饰器 1 用来将类声明为组件类,并为这个组件类配置一些元数据 2决定该组件在运行期间该如何处理、实例化和使用 装饰器存在三个基础的配置参数,用来完成组件与视图之间的关联...4.1.2、模板绑定语法 在 angular 应用组件扮演着控制器或是视图模型的作用,在创建组件时会关联一个 html 文件,这个 html 文件则是一个基础的 angular 模板文件 在这个模板文件...,可以通过 angular 内置的模板语法与 html 元素进行结合,从而告诉 angular 如何根据我们的应用逻辑和数据来渲染页面 4.1.2.1、插表达式 插表达式可以将组件的属性或者是模板上的数据通过模板表达式运算符进行计算...,就可以通过在子组件上使用事件绑定的方式绑定到一个组件事件,通过 $event 获取到子组件传递的数据组件内容: 2、使用 @Output 装饰器配合 EventEmitter

15.8K30

Angular 11正式发布:加入webpack 5,升级至TS 4.0,不再支持IE 9 和10

它为开发人员提供了一种在测试过程中使用受支持的 API 与 Angular Material 组件交互的方法。 随着版本 11 的发布,我们为所有组件都加上了测试带!...热模块替换(HMR)支持更新 Angular 提供了对 HMR(Hot Module Replacement)的支持,但启用它需要一些配置和代码更改操作,所以不方便快速添加到 Angular 项目中。...要在项目中启用它,请将以下部分添加到 package.json 文件: "resolutions": { "webpack": "5.4.0" } 目前,你需要使用 yarn 进行测试,因为...Linting 在以前的 Angular 版本,我们提供了 linting(TSLint)的一个默认实现。现在,TSLint 的项目创建者已经弃用它了,并建议大家迁移到 ESLint。...如何获取版本 11 更新 当你准备好时,请运行以下命令来更新 Angular 和 CLI: ng update @angular/cli @angular/core 可以前往 update.angular.io

3.3K30

Angular10配置webpack打包 「详细教程」

使用CLI创建一个新的Angular项目 零搭建Angular10项目 先决条件 在开始之前,请确保你的开发环境已经包含了 Node.js® 和 npm 包管理器。...第四步:编辑你的第一个 Angular 组件 组件Angular 应用的基本构造块。 它们在屏幕上显示数据、监听用户输入,并根据这些输入采取行动。...新生成的应用包含一个根模块的源文件,包括一个组件及其模板。 当工作空间文件结构到位时,可以在命令行中使用 ng generate 命令往该应用添加功能和数据。...除了在命令行中使用 CLI 之外,你还可以使用像 Angular Console 这样的交互式开发环境,或直接在应用的源文件夹和配置文件操作这些文件。...当你向应用添加更多组件时,它们也必须在这里声明。 app/package.json文件只会出现在使用 --strict 模式创建的应用。此文件不是供包管理器使用的。

4.8K20

TypeScript 入门指南: JavaScript 到强类型的开发世界

了不起: 在 JavaScript ,变量的类型可以在运行时动态改变。而在 TypeScript ,你可以在编写代码时为变量、函数参数和返回等添加类型注解。...在这种情况下,你可以使用工具如 DefinitelyTyped 来获取或编写类型定义文件,以便在 TypeScript 项目中正确地使用这些库。...类型声明文件 .d.ts 后缀结尾,它告诉 TypeScript 如何与该库进行交互。 编译配置:TypeScript 提供了丰富的编译选项,你可以根据项目的需求进行配置。...通过 tsconfig.json 文件,你可以设置编译器选项,包括输出目标版本、模块系统、源代码路径等。详细了解和正确配置编译选项可以提高项目的效率和性能。...TypeScript 允许你在项目中使用 .js 和 .ts 文件共存,并且通过逐步添加类型注解,逐步将 JavaScript 代码转换为 TypeScript。

20220
领券