angular基础面试题_java web面试题

angular基础面试题_java web面试题angular用管道转换数据Angular为典型的数据转换提供了内置的管道,包括国际化的转换(i18n),它使用本地化信息来格式化数据。数据格式化常用的内置管道如下: DatePipe:根据本地环境中的规则格式化日期值。 DatePipe:Formatsadatevalueaccordingtolocalerules. UpperCasePipe:把文本全部转换成大写。 LowerCasePipe:把文本全部转换成小写。 LowerCasePipe:.

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

angular用管道转换数据

Angular 为典型的数据转换提供了内置的管道,包括国际化的转换(i18n),它使用本地化信息来格式化数据。数据格式化常用的内置管道如下:

  • DatePipe:根据本地环境中的规则格式化日期值。

    DatePipe: Formats a date value according to locale rules.

  • UpperCasePipe:把文本全部转换成大写。

  • LowerCasePipe :把文本全部转换成小写。

    LowerCasePipe: Transforms text to all lower case.

  • CurrencyPipe :把数字转换成货币字符串,根据本地环境中的规则进行格式化。

  • DecimalPipe:把数字转换成带小数点的字符串,根据本地环境中的规则进行格式化。

  • PercentPipe :把数字转换成百分比字符串,根据本地环境中的规则进行格式化angualr

angular路由配置:

路由配置在 app.route.ts 中 

路由跳转方式 

[routerLink]="['/devicepay']" [queryParams]="{id:key}"  //路由跳转传参
//获取值
this.route.queryParams.subscribe((res)=>{
    console.log(res)
  })
{ path: 'devicepay/:id',component:DevicepayComponent},  动态传参

路由跳转  this.router.navigate(['/news'],navigationExtras);  

app.module.ts包含的内容解析

NgModule 是一个带有 @NgModule() 装饰器的类。@NgModule() 装饰器是一个函数,它接受一个元数据对象,该对象的属性用来描述这个模块。

@NgModule({
    imports:      [ BrowserModule ],导入表) —— 那些导出了本模块中的组件模板所需的类的其它模块
    providers:    [ Logger ], 本模块向全局服务中贡献的那些服务的创建器。
    declarations: [ AppComponent ], 主要应用导入组件 那些属于本 NgModule 的组件、指令、管道。
    exports:      [ AppComponent ], 导出表 那些能在其它模块的组件模板中使用的可声明对象的子集。
    bootstrap: [ AppComponent ], //应用的主视图,称为根组件。 
})

在 Angular 中有三种类型的指令:

组件 — 拥有模板的指令

结构型指令 — 通过添加和移除 DOM 元素改变 DOM 布局的指令

属性型指令 — 改变元素、组件或其它指令的外观和行为的指令。

angular 生命周期的顺序

ngOnChanges: Angular 设置或重新设置数据绑定的输入属性时响应。在 ngOnInit() 之前以及所绑定的一个或多个输入属性的值发生变化时都会调用
ngOnInit: 在 Angular 第一次显示数据绑定和设置指令/组件的输入属性之后,初始化指令/组件。
ngDoCheck:检测,并在发生 Angular 无法或不愿意自己检测的变化时作出反应,在ngOnChnages之后
ngAfterContentInit:当 Angular 把外部内容投影进组件视图或指令所在的视图之后调用,在ngDoCheck之后
ngAfterContentChecked:每当 Angular 检查完被投影到组件或指令中的内容之后调用,在ngAfter...之后调用
ngAfterViewInit:当 Angular 初始化完组件视图及其子视图或包含该指令的视图之后调用。在ng..之后,只调用一次
ngAfterViewChecked:每当 Angular 做完组件视图和子视图或包含该指令的视图的变更检测之后调用, 
                    gAfterViewInit() 和每次 ngAfterContentChecked() 之后调用。
ngOnDestroy:当 Angular 每次销毁指令/组件之前调用并清扫.

父子组件传值

子组件暴露一个 EventEmitter 属性,当事件发生时,子组件利用该属性 emits(向上弹射)事件。父组件绑定到这个事件属性,并在事件发生时作出回应。
输出给父组件  @Output  EventEmitter   somethingChanged.emit(value)也叫事件发射器 触发父组件值得改变
子组件接收值用的@input

组件样式 ViewEncapsulation.Native(仅限本组件) None (全局样式)Emulated (只进不出,全局样式能进来,组件样式出不去)

angular 数据双向绑定原理

原理:页面中每绑定一个数据或者事件时,就会向$watch队列中加入一条$watch,当浏览器接受到可以被angular context(当事件触发,调用$apply进入angular context)处理的事件时,就会触发digest循环,它会遍历每一个$watch检查其属性和值是否发生改变,如果改变则用新值覆盖旧值,直到所有$watch检查完。如果此次digest循环有更新,那么会再次触发digest循环,直到所有的$watch都没有更新为止。

使用Angular 2,和使用Angular 1相比,有什么优势?

  1. Angular 2是一个平台,不仅是一种语言
  2. 更好的速度和性能
  3. 更简单的依赖注入
  4. 模块化,跨平台
  5. 具备ES6和Typescript的好处。
  6. 灵活的路由,具备延迟加载功能
  7. 更容易学习
  8. angular1是全局监听,变量越多性能越差,angular2采用模块化监听,提升了性能

    在Angular 2应用中,我们应该注意哪些安全威胁?

    就像任何其他客户端或Web应用程序一样,Angular 2应用程序也应该遵循一些基本准则来减轻安全风险。其中一些是:

  • 避免为你的组件使用/注入动态HTML内容。
  • 如果使用外部HTML,也就是来自数据库或应用程序之外的地方,那么就需要清理它。
  • 不要将外部网址放在应用程序中,除非它是受信任的。避免网址重定向,除非它是可信的。
  • 考虑使用AOT编译或离线编译。
  • 通过限制api,选择使用已知或安全环境/浏览器的app来防止XSRF攻击、

Angular变化监测 :

event:绑定event事件,数据变化视图更新

timeout,延迟触发

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/180721.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 两分钟解决IntelliJ IDEA中文乱码问题

    两分钟解决IntelliJ IDEA中文乱码问题1.首先是编辑器的乱码,这个很好解决,file->settings->appearence里面有个Name设置成支持中文的字体(这个很重要)同样还要再settings中的Eidtor->FileEncodings里面设置字体编码格式,一般都是UTF-8,GBK什么的也行。2.找到idea安装目录bin目录下如下图所示两个文件,用编辑器打开,在文件末尾添加-Dfile.encoding=UTF-

    2022年6月12日
    79
  • 提取pfx证书密钥对

    提取pfx证书密钥对两个测试证书test.pfx和test.cer.其中pfx证书包含RSA的公钥和密钥;cer证书用于提取pfx证书中密钥时允许当前电脑进行合法操作提取步骤如下:点击test.cer,安装cer证书2.从pfx提取密钥信息,并转换为key格式(pfx使用pkcs12模式补足)(1)提取密钥对opensslpkcs12-intest.pfx-nocerts-nodes-outtest.key//如果pfx证书已加密,会提示输入密码。如果cer证书没有安装

    2022年5月31日
    57
  • 程序员喜欢穿格子衫的原因_为什么程序员喜欢穿格子衬衫

    程序员喜欢穿格子衫的原因_为什么程序员喜欢穿格子衬衫点击上方关注我们,让小care关爱你!在互联网时代下,今天的你不用在路边拦车,不用带现金出门,用一个手机解决生活所有的问题。这一切都离不开”程序员”的夜以继日传说,中文互联网有三大杀器:处女座、五仁月饼和格子衬衫,只要集齐它们就可以破碎山河撕裂人伦纵横四海。不知道从什么时候起,格子衬衫已经成为了程序员的代名词,有些时候,就连“程序媛”也无法幸免。(你猜此刻的小姐姐是怎样的表情)那其实你知…

    2022年10月4日
    3
  • 自适应音频功率放大器「建议收藏」

    自适应音频功率放大器「建议收藏」自适应音频功率放大器一、题目描述基本指标:输入信号范围10-100mV有效值,负载电阻8Ω,输出功率恒定2W其他要求:测取功放指标,测取输入、输出电阻,测取通频带曲线,验证带宽。二、设计思路拟采用自动增益控制(AGC)电路+功率放大电路实现该课题要求。2.1AGC电路设计思路采用结形场效应管(JFET)或程控放大芯片设计。①利用JFET2N3821工作在可变电阻区,通过改变场效应管源漏极间的电阻来控制运算放大器的放大倍数。②采用AD603程控增益可调集成运放作为可变增益放大器结合简单

    2022年5月3日
    54
  • intellij+idea+激活码【最新永久激活】2022.03.05

    (intellij+idea+激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年4月2日
    431
  • 浅谈滴滴派单算法

    浅谈滴滴派单算法(图片付费下载自视觉中国)作者|王犇刘春阳徐哲来源|滴滴技术(ID:didi_tech)【导读】说到滴滴的派单算法,大家可能感觉到既神秘又好奇,从出租车扬召到…

    2022年6月2日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号