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

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

Angular应用程序具有路由器服务的单个实例,并且每当URL改变时,相应的路由就与路由配置数组进行匹配。...如何在Angular 2应用程序中使用codelyzer? 所有企业应用程序都会遵循一组编码惯例和准则,以更好的方式维护代码。...如何在Angular 2中启用延迟加载? 大多数企业应用程序包含用各式各样的用于特定业务案例的模块。捆绑整个应用程序代码并完成加载,会在初始调用时,产生巨大的性能开销。...如何实现不出现编辑器警告的自定义类型? 在大多数的情况下,第三方库都带有它的.d.ts 文件,用于类型定义。...在某些情况下,我们需要通过向现有类型提供一些更多的属性来扩展现有类型,或者如果我们需要定义其它类型以避免TypeScript警告。

17.4K80

Blazor 中的路由和路由模板

路由器之战:Blazor 与Angular 很长一段时间,路由逻辑的实现都隐藏在 Web 服务器或服务器端框架(如 ASP.NET)的折叠中。...与 Angular 路由器不同,它在获取路由参数后无法异步运行解析步骤。最后,Blazor 路由器不支持条件重定向到备用路由 - 这也是 Angular 路由器可以做到的。...在正常情况下,如果没有任何预防措施,它可能会产生异常,因为文本值被填充到整数容器中。如果需要确保在应有参数的位置仅指定给定类型的值,则应选择路由约束。...它包括向每个 URL 参数添加类型属性,如下所示: @page “/user/view/{Id:int}” 参数的名称后跟冒号和表示 .NET 类型的文本。...路由谜题的另一个重要缺失部分:完全自定义决定目标 URL 的路由器逻辑的功能。此功能有助于开发人员控制无效链接请求。虽然 Blazor 路由器还远未完成,但仍在继续向成熟的传送框架发展。

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

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

    下面列出了使用Angular框架的一些主要优点: 支持双向数据绑定 它遵循MVC模式架构 它支持静态模板和Angular模板 您可以添加自定义指令 它还支持RESTfull服务...Angular中的过滤器用于格式化表达式的值,以便将其显示给用户。这些过滤器可以添加到模板,指令,控制器或服务中。不仅如此,您还可以创建自己的自定义过滤器。...Angular中的service()是用于应用程序业务层的函数。它作为构造函数运行,并在运行时使用’new’关键字调用一次。...在这种情况下,所请求的URL可以精确定位需要处理的数据。然后,HTTP方法将标识需要对请求的数据执行的特定操作。因此,遵循此方法的API被称为RESTful API。 41....这是用于创建和配置服务的方法。在这里,您可以创建一个对象,向其中添加属性,然后返回相同的对象,并将工厂方法传递到控制器中。 45. 什么是Angular Global API?

    41.5K51

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

    安装 Angular CLI 后,您需要运行一个命令来生成一个项目,并运行另一个命令来使用本地开发服务器来运行您的应用程序。...: add: 向您的项目添加对外部库的支持。...lint (l): 在给定项目文件夹中的 Angular 应用程序代码上运行 linting 工具。 new (n): 创建一个新的工作区和一个初始的 Angular 应用程序。...run: 运行项目中定义的自定义目标。 serve (s): 构建并服务您的应用程序,根据文件更改进行重建。 test (t): 在项目中运行单元测试。 update: 更新您的应用程序及其依赖项。...当然,您可以为您的项目选择任何有效的名称。由于我们将创建一个全栈应用程序,因此我使用 frontend 作为前端应用程序的名称。 如前所述,CLI 会询问您是否要添加 Angular 路由?

    62000

    构建具有用户身份认证的 Ionic 应用

    你可以使用 @ionic/cloud-angular 依赖中提供的类创建身份认证。它也支持 自定义身份认证,但是 "需要你自己的服务器处理身份认证"。...为了自动激活键盘,你需要告诉 Cordova 没有用户交互的情况下显示键盘是可以的。你可以在根路径的 config.xml 中添加以下代码。...TIP: 我发现在模拟器中运行应用程序时的最大问题是键盘很难弹出。...我相信使用 Cordova 打包 app 之后并不会正常工作,因为通过内嵌的 iframe 向服务端发送请求,然后使用 postMessage 将结果返回当前窗口。...PWA 是可以安装在系统中的 web 应用程序。它可以在离线情况下工作,使用的是你最后一次与 app 交互的数据缓存。添加 PWA 功能可以让 app 加载更快,提供更好的用户体验。

    23.8K00

    构建具有用户身份认证的 Ionic 应用

    你可以使用 @ionic/cloud-angular 依赖中提供的类创建身份认证。它也支持 自定义身份认证,但是 "需要你自己的服务器处理身份认证"。...为了自动激活键盘,你需要告诉 Cordova 没有用户交互的情况下显示键盘是可以的。你可以在根路径的 config.xml 中添加以下代码。...TIP: 我发现在模拟器中运行应用程序时的最大问题是键盘很难弹出。...我相信使用 Cordova 打包 app 之后并不会正常工作,因为通过内嵌的 iframe 向服务端发送请求,然后使用 postMessage 将结果返回当前窗口。...PWA 是可以安装在系统中的 web 应用程序。它可以在离线情况下工作,使用的是你最后一次与 app 交互的数据缓存。添加 PWA 功能可以让 app 加载更快,提供更好的用户体验。

    23.3K50

    AngularDart 4.0 高级-管道 顶

    例如,在大多数使用情况下,用户更喜欢以1988年4月15日这样的简单格式查看日期,而不是原始字符串格式Fri Apr 15 1988 00:00:00 GMT-0700(太平洋夏令时)。...管道和变化检测 Angular通过在每个DOM事件之后运行的更改检测过程查找数据绑定值的更改:每次击键,鼠标移动,计时器滴答和服务器响应。 这可能是昂贵的。 Angular努力尽可能降低成本并适当。...注意如何添加一个英雄: heroes.add(hero); 您将英雄添加到英雄列表中。 对列表的引用没有改变。 这是同一个列表。 这都是Angular关心的。...在这个例子中,这是一个简单的规则,其中更改数据的唯一方法是添加一个英雄。 更常见的情况是,您不知道数据何时发生变化,特别是在以多种方式变异数据的应用程序中,可能在远离应用程序的位置。...--> 您通过文本字符串来识别排序字段,期望管道通过索引引用属性值(如hero

    6.4K20

    8分钟为你详解React、Angular、Vue三大框架

    然而,React只关注向DOM渲染数据,因此创建React应用通常需要使用额外的库来进行状态管理和路由,Redux和React Router分别是这类库的例子。...定制Hooks 构建自己的Hooks,也就是所谓的自定义Hooks,可以让你把组件逻辑提取到可重用的函数中。自定义钩子是一个名称以 "use "开头的JavaScript函数,它可以调用其他的钩子。...支持Angular Universal,可以在服务器上运行Angular应用程序。 版本9 Angular 9已于2020年2月6日发布。第9版在默认情况下使用Ivy编译器。...由于SPA只向用户提供一个基于URL的服务器响应(它通常服务于index.html或index.vue),因此通常情况下,将某些屏幕作为书签或分享到特定部分的链接是很困难的,甚至是不可能的。...但开源的 "vue-router "包提供了一个API来更新应用程序的URL,支持返回按钮,并支持电子邮件密码重置或电子邮件验证链接的认证URL参数。

    22.2K20

    “四大高手”为你的 Vue 应用程序保驾护航

    本文将为大家介绍四种可以帮助我们便捷保护 Vue 应用程序的便捷方法,而且。这些方法简单易用,不会影响到我们的正常工作进程。...Vue 框架概述 Vue 是一个用于构建 Web 用户界面的渐进式框架,必须要提到的是它可以和其他框架(如 React 和 Angular)完美集成。...保护 Vue 应用程序的 4 种方法 下面是我们将为大家介绍一些攻击,通过它可以让我们了解如何保护在Vue上运行的应用程序。...减轻这种威胁的一种常见方法是让服务器发送包含在 cookie 中的随机身份验证令牌。客户端读取 cookie 并在所有后续请求中添加具有相同令牌的自定义请求标头。...例如在对应代码前加上字符串 ")]}',\n",然后在解析数据之前将其删除。因为脚本必须保证完整性才能运行,所以这样就可以避免XSII攻击。

    93020

    教程|在 Angular 4 中加载功能模块(上)

    尽管 Angular 4 最初是为 JavaScript 而设计的,但它在 Angular 2 基础之上添加了对更多语言的支持,比如 Dart 和 Typescript。...本教程将介绍如何在 Angular 中开发和加载功能模块。尽管对于较小的应用程序,根模块就足够用了,但对于更大更复杂的应用程序,需要创建功能模块。还需要能够高效地加载模块,以获得最佳应用程序性能。...您可以引导根模块来启动 Angular 应用程序。对于小型应用程序,只需要根模块和一些组件。在构建更复杂的中到大型应用程序时,会向应用程序添加功能模块。...对根模块始终采用贪婪加载,在一些情况下,也会对其他功能使用贪婪加载。 惰性加载:随着应用程序的功能区域的构建,应用程序的大小会不断增加。...应用程序运行在端口 4200 ng 是一条 Angular CLI 命令,您将使用它构建和处理应用程序代码。打开 Chrome 浏览器并输入 URL http://localhost:4200。

    2.2K10

    10个小技巧助您写出高性能的ASP.NET Core代码

    运行时编译。它在ASP.NET Core 3.0模板中被禁用,但现在可以通过向项目添加特殊的NuGet包来打开它。 Worker Service 模板。...Angular SPA模板现在使用Angular 7,在第一次稳定释放之前,它将被Angular 8替换。 SPA-s的身份验证。Microsoft通过此预览为单页应用程序添加了现成的身份验证支持。...众所周知,大多数应用程序都使用某种数据库,每次从数据库获取数据时,都会影响应用程序的性能。如果数据库加载缓慢,则整个应用程序将缓慢运行。...经常对不经常变化的数据设置缓存。 不要试图提前获取不需要的数据,这会增加响应的负载,并导致应用程序的加载速度变慢。 优化自定义代码 除了业务逻辑和数据访问代码之外,应用程序中可能还有一些自定义代码。...始终检查长期运行的任务是否应该异步执行,而不影响其他进程。 您可以使用实时客户端-服务器通信框架,如:SignalR,来进行异步工作。

    4.5K31

    使用 Jenkins X、Kubernetes 和 Spring Boot 实现 CICD

    过去五年中的变化,如迁移到公有云以及从虚拟机向容器的转变,已经彻底改变了构建和部署软件的意义。 以 Kubernetes 为例。...保护你的 Spring Boot 应用程序并添加 Angular PWA 在过去的几个月里,我写了一系列有关使用 Ionic/Angular 和 Spring Boot 构建 PWA(渐进式 Web 应用程序...第一个是你创建的 Jenkins X OIDC 应用程序的 ID。您可以通过在 Okta 上导航到您的应用程序并从 URL 复制值来获得它的值。...在 Okta 中自动添加重定向 URI 当你在 Okta 中创建应用程序并在本地运行它们时,很容易知道应用程序的重定向 URI 将是什么。...如果手动添加 URI,一切都应该有效。 在 Jenkins X 中运行 Protractor 测试 对我来说,弄清楚如何在 Jenkins X 中运行端到端测试是最难的。

    4.3K10

    52ABP-PRO 前后端分离架构概述

    介绍 在阅读本文档之前,建议您先运行一次 52ABP 项目程序,打开过 Angular 版本的界面,如果你还没有运行过项目可以参考快速入门文档。 或者你已经对 ABP 有过一些了解。...WebSiteClientRootAddress 客户端 Angular 应用程序的 URL 地址。...CorsOrigins 则是管理允许哪些 Url 地址向 Web.Host 应用程序提出跨源请求的 URL。 有关配置 Web.host 应用程序的详细信息,请查看Web.Host 项目介绍....我们建议将模块化思想贯彻到底,应用程序划分为更小的模块,就像我们在启动项目中所做的那样,而不是将所有功能添加到主模块中。尽量使用懒加载的形式。 作为基础设施的模块,都应该有自己的路由。...要使租赁名称子域正常工作,我们还应在 IIS 的应用程序旁边进行两种配置: 我们应该配置 DNS 以将所有子域名重定向到静态公网 IP 地址。

    3.7K40

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

    跨平台应用程序: Angular通过Ionic等框架支持构建移动应用,同时也能够通过Electron等支持构建桌面应用。这种一次编写,多端运行的能力使得Angular在跨平台开发中具有优势。...通过这些步骤,就成功地创建了一个简单的 ASP.NET Core 项目,并且可以在本地运行它。可以根据需要进一步在项目中添加功能和内容。...ng new my-angular-app 构建 Angular 应用: 在 Angular 应用的根目录中运行以下命令来构建项目。...("/index.html"); // 处理前端路由的路由 }); 通过这种方式,前端路由和后端路由可以很好地整合在一起,并且在应用程序中正常工作,而不会发生冲突。...("/index.html"); // 处理前端路由的路由 }); 通过以上步骤,你就可以将 Vue 路由与 ASP.NET Core 路由整合在一起,并且可以在应用程序中正常工作,而不会发生冲突。

    24600

    如何在Ubuntu 16.04上使用Alerta监视Zabbix警报

    cp -r angular-alerta-webui/app/* /var/www/html/ 默认情况下,Alerta的Web界面配置为与在端口8080上运行的开发服务器API进行通信。...对于主页URL,请使用http://your_alerta_server_ip/ 用http://your_alerta_server_ip/填写授权回调URL 单击注册应用程序以保存设置。...这次你会看到“请登录以继续”的消息。单击“ 登录”按钮登录,系统将要求您允许应用程序访问您的GitHub帐户。 现在我们可以运行一个简单的测试来检查Alerta是否已设置并正常运行。...git 默认情况下,Zabbix可以通过电子邮件,SMS或Jabber消息发送通知,但您可以使用脚本添加新的通知处理程序。...确保一切正常运行后,请删除您创建的临时文件,以便回收磁盘空间: rm -f /tmp/temp.img 一分钟后,Zabbix将发送恢复消息。

    4.2K40

    从0开始构建一个Oauth2Server服务 单页应用

    在这种情况下,应用程序的服务器永远不会向服务发出 API 请求,因为一切都直接在浏览器中处理。 授权 授权代码是一个临时代码,客户端将用它来交换访问令牌。...在任何情况下,对于隐式流程和没有秘密的授权代码流程,服务器必须要求注册重定向 URL 以维护流程的安全性。...此外,浏览器 API 的添加意味着ServiceWorkers现在基于浏览器的应用程序有可能在用户未主动使用浏览器时运行代码,例如响应后台同步事件。...这为授权服务器提供了一种检测刷新令牌是否已被攻Attack复制和使用的方法,因为在应用程序的正常运行中,刷新令牌只会被使用一次。...这是一种相对常见的架构模式,其中应用程序由动态后端(如 .NET 或 Java 应用程序)提供服务,但它使用单页应用程序框架(如 React 或 Angular)作为其 UI。

    22330

    angular5面试题_大数据面试题

    会做2件事,1)基于npm安装node_modules, 2)自动更改配置文件,保证新的依赖正常工作 关于angular的依赖注入(dependency injection) 依赖注入是Angular实现的一种应用程序设计模式...关于angular的编译,AOT和JIT的区别 每个Angular应用程序都包含浏览器无法理解的组件和模板。 因此,在浏览器内部运行之前,需要先编译所有Angular应用程序。...显而易见,AOT编译好处多多,因而是Angular的默认编译方式。主要优点 由于应用程序是在浏览器内部运行之前进行编译的,因此浏览器会加载可执行代码并立即呈现应用程序,从而加快了呈现速度。...AOT编译器将HTML和模板添加到JS文件中,然后再在浏览器中运行。 因此,没有多余的HTML文件可读取,从而为应用程序提供了更好的安全性。...url(~/customers)时,才会向server端请求这个独立的js,然后加载、执行。

    4.3K20

    HCL AppScan Standard 10.2.0 中的新增功能

    它具有识别安全漏洞的前沿方法和技术,可帮助保护应用程序免受网络攻击的威胁。 HCLAppScan Standard是动态分析工具,通过使用类似于黑客使用的方法攻击应用程序,在运行时评估应用程序安全性。...服务器端技术 客户机端技术 探索阶段 任何不影响客户机的服务器端技术(如使用的特定数据库)不会以任何方式影响扫描。只要 AppScan 配置正确,很多影响客户机的机制(如会话管理)都不会限制扫描。...AppScan 特别支持 WebSphere Portal 定制 URL。WSP 对 URL 的编码方式使其在显示时很难跟踪。AppScan 会解码这些 URL,以理解这些 URL 并对其进行调优。...使用 2.0 评分运行的扫描可以应用 3.1 评分(这可能会改变某些问题评分和严重性)或按原样查看。 根据 CVSS 3.1,为安全问题添加了新的严重性级别 - “严重”。...在新的“配置”视图中,扫描向导替换为了“预设”,向您显示用于快速设置的基本选项。 现在,从“文件”菜单(文件 > 新建 > 递增扫描)访问递增扫描。

    67730
    领券