首页
学习
活动
专区
圈层
工具
发布

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

另一方面,装饰器是用于分离装饰或修改类的设计模式,而无需实际更改原始源代码。 9.您对Angular中的控制器了解多少? 控制器是JavaScript函数,可为HTML UI提供数据和逻辑。...Angular中的过滤器用于格式化表达式的值,以便将其显示给用户。这些过滤器可以添加到模板,指令,控制器或服务中。不仅如此,您还可以创建自己的自定义过滤器。...使用它们,您可以轻松地组织数据,使数据仅在满足特定条件时才显示。通过使用竖线字符|,将过滤器添加到表达式中,然后是过滤器。 14. Angular和jQuery有什么区别?...Angular组件具有离散的生命周期,其中包含从出生到死亡过渡的不同阶段。为了更好地控制这些阶段,我们可以使用以下方法将其连接: 构造函数: 通过在类上调用new创建组件或指令时将调用它。...W3C推荐的标准规格 5.每个浏览器都有自己的实现 33.什么是Angular中的Transpiling? Angular中的编译是指将源代码从一种编程语言转换为另一种编程语言的过程。

45.9K51

AngularJS的digest循环和$apply

结果查阅资料,终于得知,使用第三方框架(比如jQuery),或者调用setTimeout(),会导致其运行在AngularJS上下文外部,可以使用apply()函数让Angular返回apply()函数让...当使用angular时,其会扩展这个标准的浏览器流程,创建一个angular上下文(angular事件循环内的特定代码,该angular事件循环通常被称为$digest循环)。...当手动处理事件,使用第三框架(比如jquery)或者调用setTimeout都可以使用apply()函数可以从angular框架的外部让表达式在angular上下文内部执行。...当手动处理事件,使用第三框架(比如jquery)或者调用setTimeout都可以使用apply()函数将值传递到angular应用中。...(1)不建议在控制器中使用$apply(),因为这样会导致难以测试。 (2)jquery和angular同时使用被视为一个肮脏的行为。

4.3K41
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    现代Web开发需要学习的15大技术

    并且有更多的工具可用于转换ES6代码为普通的旧的JavaScript代码,也就是ES5。 ? 我概括了一系列我们应该学习的编程语言/工具,以便于理解势不可挡和快速变化的现代web开发。...要想实时地将ES6转换为ES5代码,在https://babeljs.io/repl/有一个可用的REPL。 需要注意的是Babel不仅仅是ES6到ES5的转译器。...想添加Jquery到你的应用程序?和使用bower install jquery一样容易。 上述工具用于基本的前端开发已经足够。不过下面我还要说一说两个最流行的框架,即React和Angular。...这是一个伟大的库,你可能会在你的app中大量使用它,但是当你关注于性能影响时,它就完全没用了。 Angular 2 Angular 2是JavaScript中最流行的MVC框架之一的下一个版本。...在选择Angular 2开发时要小心评估。 TypeScript Angular 2推荐TypeScript作为编程语言的首选。

    3.4K20

    Angular2 VS Angular4 深度对比:特性、性能

    通过在DI库中提供基本信息(可以调用函数或创建类的实例来检查相关元数据),从而简化了对象实例的构建。通过提供注入注释,使得参数信息重写也变得简单。...根据需要,在一定范围内,一些类型的对象可以被调用和机械的重写。 实例范围: 增强的DI库是由实例范围控制器组成的,当与子注入器连同范围标识符一起使用时,会更加强大。...动态载入: 这是之前的Angular版本均不具备的功能,Angular2包含了这个功能,即使在开发人员忙碌时,也能够添加新的指令或控件。 模板: 在Angular2中,模板编译过程是异步的。...装饰器指令:可用于装饰元素(例如,通过隐藏/显示元素ng-hide/ng-show或添加工具提示)。 模板指令:可以将HTML转换为可复用的模板。...子路由 子路由将通过提供自身的路由功能,将程序的每个部分转换为更紧密的应用程序,这有助于整个程序功能集合的封装。

    11.7K20

    现代Web开发需要学习的15大技术

    并且有更多的工具可用于转换ES6代码为普通的旧的JavaScript代码,也就是ES5。 我概括了一系列我们应该学习的编程语言/工具,以便于理解势不可挡和快速变化的现代web开发。...要想实时地将ES6转换为ES5代码,在https://babeljs.io/repl/有一个可用的REPL。 需要注意的是Babel不仅仅是ES6到ES5的转译器。...想添加Jquery到你的应用程序?和使用bower install jquery一样容易。 上述工具用于基本的前端开发已经足够。不过下面我还要说一说两个最流行的框架,即React和Angular。...这是一个伟大的库,你可能会在你的app中大量使用它,但是当你关注于性能影响时,它就完全没用了。 Angular 2 Angular 2是JavaScript中最流行的MVC框架之一的下一个版本。...在选择Angular 2开发时要小心评估。 TypeScript Angular 2推荐TypeScript作为编程语言的首选。

    3.9K90

    angularJS之站在jQuery的肩膀上

    这样的分工符合经济学原理,开启了一个不可忽视的jQuery时代。 满眼的全是DOM jQuery使得开发无刷新动态页面(AJAX)或者单页应用(SAP)变得 相当简单。...它其实是一个类工厂,负责将指定的DOM对象转化为jquery对象。 在DOM文档就绪后,启动一个定时器 使用$(document).ready()可以监听DOM文档就绪事件,通常简写成$(...)。...jquery封装后的DOM对象有一堆的方法供你调用,我们使用text()方法更新其文本。...AngularJS自动地将jqLite升级成jQuery,angular.element等同于 $ 。 这样又可以使用熟悉的选择符了。...扩展的事件 jqLite还提供一个$destroy事件,当DOM对象被从DOM树删除时,AngularJS将触发 这个事件,以便指令进行一些善后清理工作。

    1.2K10

    动态We API(ABP官方文档翻译)

    创建动态Web API控制器 这个文档是针对ASP.NET Web API的。如果你对ASP.NET Core感兴趣,请参见ASP.NET Core文档。   ...所以,你可以在javascript中像一个function一样调用动态web api controller的action。...然后,我们可以作为常见的javascript函数调用它的函数。注意,我们注册了success处理方法(而不是done),因为在augularhttp服务中也是如此定义的。...type=angular"> 启用/禁用 如果你使用如上定义的ForAll方法,你可以为服务或方法使用RemoteService特性来禁用它。在服务接口中使用,而不是在服务类中。...这个特性应该在接口中声明,不要在实现类中。   如果你想更加精确的控制返回结果给客户端时,取消包装会很有用。尤其是,当使用第三方客户端类且它不能处理ABP标注AjaxResponse时会需要。

    3.2K30

    在ASP.NET MVC5中实现具有服务器端过滤、排序和分页的GridView

    现在,在控制器文件夹中添加一个空的名为 AssetController 的控制器,这个控制器件将用于所有 Asset 的相关工作。...配置数据库的连接字符串 在写控制器代码之前,我们需要为实体框架配置连接字符串,以便在操作数据库时来连接数据库。因此,我们的连接字符串应该被指定给一个有效的数据源,以便我们在运行时应用不会被打断。...当写入 document.ready 文件时,assetListVM.init( ) 函数将会被调用。...首先我们需要引用 System.Linq.Dynamic,以便在行为中可以使用动态链接方法。再一次进入 NuGet 包管理器搜索 System.Linq.Dynamic,并在项目中安装它。 ?...我们正在获取 Assets 的引用,以便能够链接到实体框架请求数据,我们可以通过 Count()函数来获取数据集表的数据数目,这个数据将会传递到 DataTablesResponse 构造函数中,成为行为方法的最后一行

    7.6K80

    10个最受欢迎的 JavaScript 框架,以及它们的主要特征和功能

    Angular 的主要特性: MVC 架构:AngularJS 最重要的特性之一是 MVC 架构。 MVC 架构分为三个元素,即模型、视图和控制器。...VueJS的主要特性: 模板:Vue.js 提供基于 HTML 的模板,将 DOM 与 Vue.js 实例数据绑定。 Vue.js 将模板编译为虚拟 DOM 渲染函数。...当两者纠缠在一起时,修改将会变得很难。当逻辑不依赖于 UI 时,你的界面会变得更加易用。 事件驱动的通信:当项目不断增长时,jQuery 声明和回调将变得更加复杂,代码变得更加混乱。...自定义元素:它允许使用 HTML、CSS 和 JavaScript 轻松创建自定义元素,以便向元素添加交互。...可扩展的 HTML:Aurelia 的可扩展 HTML 编译器允许你创建自定义 HTML 元素,可以向现有元素中添加自定义属性并控制模板生成,所有这些都完全支持动态加载、数据绑定和高性能批量渲染。

    5.9K10

    前端MVC学习总结(一)——MVC概要与angular概要、模板与数据绑定

    第一个AngularJS程序要注意的地方:  1、HTML里面没有Class或者ID来标记在哪里添加事件监听器 2、当HelloController把message设置成Hello World时,我们没有必要注册任何事件监听或者编写任何回调函数...configFn:模块配置阶段调用的另一个函数。...将此过滤器添加到 ng-bind-html 、data-ng-bind-html? 所绑定的数据中,便实现了在数据加载时对于 html 标签的自动转义。 示例代码: <!...2.9、ng-class与ng-style 指定类样式与行内样式。 ngClass指令允许你动态设置HTML元素的CSS类,通过绑定到一个包含要添加的所有类的表达式。 ...这个指令不会添加重复的类,如果这个类已经存在的话。 当表达式改变时,以前添加的类会被移除,并且只会添加之后新产生的类。 ngStyle指令允许你在HTML元素上条件化设置CSS样式。

    14.5K30

    vue响应式原理(数据双向绑定的原理)

    比如React,它也有一定程度的主张,它的主张主要是函数式编程的理念,比如说,你需要知道什么是副作用,什么是纯函数,如何隔离副作用。它的侵入性看似没有Angular那么强,主要因为它是软性侵入。...Vue可能有些方面是不如React,不如Angular,但它是渐进的,没有强主张,你可以在原有大系统的上面,把一两个组件改用它实现,当jQuery用;也可以整个用它全家桶开发,当Angular用;还可以用它的视图...相比传统的前端开发,如使用 jQuery 等前端库直接修改 DOM,大大简化了代码量,特别是当交互复杂的时候,只关心数据的修改会让代码的逻辑变的非常清晰,因为 DOM 变成了数据的映射,我们所有的逻辑都是对数据的修改...然后,需要compile解析模板指令,将模板中的变量替换成数据,接着初始化渲染页面视图,并将每个指令对应的节点绑定更新函数,添加监听数据的订阅者。...()方法 3)待属性变动,dep.notice()通知时,就调用自身的update()方法,并触发Compile中绑定的回调 4.

    3.3K40

    前端程序员必知:单页面应用的核心

    从过去的 jQuery Mobie、Backbone 到今天的 Angular 2、React、Vue 2,除了版本号不同,他们还有很多的相同之处。 刚开始写商业代码的时候,我使用的是 jQuery。...随后,我们的应用将根据用户请求的路径,将请求交给相应的函数来处理。最后,返回相应的 HTML 和资源文化 当我们做后台应用的时候,我们只需要关心上述过程中的最后一步。...这个时候,控制器将需要在页面上设置一个 loading 的状态,然后发送一个请求到后台服务器。 ?...对于一些需要重用的元素,我们会将其抽取为一个通用的组件,以便于我们可以复用它们。...然而,使用 service 时,我们很难跟踪到状态的变化情况,还需要做一些额外的代码来特别处理。 有时候也会犯懒一下,直接写一个全局变量。这个时候维护起代码来就是一场噩梦,需要全局搜索相应的变量。

    1.9K90

    AngularDart4.0 英雄之旅-教程-08HTTP 顶

    让用户添加,编辑和删除英雄的名字。 将更改保存到服务器。 您将教会应用程序对远程服务器的Web API进行相应的HTTP调用。 当你完成这个页面,应用程序应该看起来像这个实例(查看源代码)。...内存中的Web API服务,如下所示,使用http库MockClient类实现。 所有的http客户端实现共享一个共同的客户端接口,所以你将有应用程序使用客户端类型,以便您可以自由切换实现。...该代码还包含传播异常给调用者的错误,以便调用者可以向用户显示适当的错误消息。...处理程序将创建的命名的英雄委托给英雄服务,然后将新的英雄添加到列表中。...每次调用search()都会通过调用控制器上的add()将新的字符串放入流中。 初始化英雄属性(ngOnInit) 您可以将搜索条件流转换为英雄列表流,并将结果分配给heroes属性。

    12.9K30

    Angular JS + Express JS入门搭建网站

    控制器Controller   要动态操作网页中的数据,我们可以针对Html页面编写控制器,控制器本质是一个Javascript方法,例如我们可以针对每一个HTML页面,写一个对应的Javascript...就是要在对应的控制器中给name赋值,从来用户访问index.html页面时可看到name真实的值。     ...当然我觉得真实开发中,控制器的代码肯定会很多,建议每一个像indexContrl的控制器单独放在一个JS文件中,这样规范,好维护。   ...示例结果及小结   最后访问网站,可看到正确的结果,网站已被挂起,同时页面中的变量已被Angular JS控制器替换为正确数据。   ...这里讲一个小地方,最初试验时页面的变量怎么也不替换,花了很多个小时,换了Angular JS库,改变了控制器等写法,都没用。最后查资料和文档,才发现只有页面中有ng-view,才会起作用。

    5.8K60

    多种前端框架的优缺点「建议收藏」

    5、完善的Ajax:JQuery将所有的Ajax操作封装到一个函数$.ajax()里,使得开发者处理Ajax的时候能够专心处理业务逻辑而无需关心复杂的浏览器兼容性和XMLHttpRequest对象的创建和使用的问题...这一特点使得JQuery的代码无比优雅。 9、隐式迭代:当用JQuery找到带有“.myClass”类的全部元素,然后隐藏他们时。无需循环遍历每一个返回的元素。...同时,后期维护也非常方便,不需要在HTML代码中寻找某些函数和重复修改HTML代码。...misko,angular的作者. 3.对IE6/7 兼容不算特别好, 就是可以用jQuery自己手写代码解决一些. 4.指令的应用的最佳实践教程少, angular其实很灵活, 如果不看一些作者的使用原则...你可以在React里传递多种类型的参数,如声明代码,帮助你渲染出UI、也可以是静态的HTML DOM元素、也可以传递动态变量、甚至是可交互的应用组件。

    5.3K20

    一统江湖的大前端(10)——inversify.js控制反转

    了解过前端框架发展历史的读者可能会知道在2014年时Angular1.x版本有多火,尽管它并不是第一个将MVC思想引入前端的框架,但的确可以算作第一个真正撼动jQuery江湖地位的黑马,由于在升级Angular2.0...面向对象的编程是基于“类”和“实例”来运作的,当你希望使用一个类的功能时,通常需要先对它进行实例化,然后才能调用相关的实例方法。...AOP和装饰器 面向切面编程(Aspect Oriented Programming,即AOP),是程序设计中非常经典的思想,它通过预编译或动态代理的方式来为已经编写完成的模块添加新的功能,从而避免了对源代码的修改...假设你在系统中使用著名的axios库来处理网络请求,后端在用户登录成功后返回一个token,需要你每次发送请求时都将它添加在请求头中以便进行鉴权,常规的思路是编写一个通用的getToken方法,然后在每次发请求时通过自定义...其他类型装饰器的基本工作原理也是一样的,只是函数签名中的参数不同,例如方法装饰器被调用时会传入3个参数: 第1个参数装饰静态方法时为构造函数,装饰类方法时为类的原型对象 第2个参数是成员名

    3.9K30

    day02_品优购电商项目_02_前端框架AngularJS入门 + 品牌列表的实现 + 品牌列表分页的实现 + 增加修改删除品牌的实现 + 品牌分页条件查询的实现_用心笔记

    ng-click 是最常用的单击事件指令,再点击时触发控制器的某个方法。...2.2 前端代码 2.2.1 拷贝页面资源 将“资源/静态原型/运营商管理后台”下的页面资源拷贝到pinyougou-manager-web下: ?...ng-controller 指令用于为你的应用添加的控制器。 在控制器中,你可以编写代码,制作函数和变量,并使用 scope 对象来访问。...方法二:创建分页查询时返回的结果类(包装类)来进行接收,该类包含total和rows属性。...--分页控件-->      3.3.2 JS代码 在控制器 brandController 中添加如下代码

    10.4K64
    领券