前言 Angular 19 预计会在 11 月中旬发布,目前 (2024-10-27) 最新版本是 v19.0.0-next.11 已经发布了。 这次 v19 的改动可不小哦,新增了很多功能,甚至连 effect 都 breaking changes 了呢 估计这回 Angular 团队又会一如 ...
介绍 先讲讲名词。 Internationalization 的缩写是 i18n,中文叫国际化。 Globalization 是 Internationalization 的同义词,都是指国际化。 Localization 的缩写是 l10n,中文叫本地化。 i18n vs l10n 一个国际化,一 ...
前言 本篇只会教 Angular Material Datepicker 里最关键的组件 -- Calendar 组件。 还有如何自定义 DateAdapter,让 Calendar 支持 TC39 Temporal。 有兴趣想学完整 Datepicker 的朋友们,请移步官网。 只对 Calend ...
Angular 的路由复用策略(RouteReuseStrategy)是一种用于优化路由跳转性能和提高用户体验的机制。通过实现RouteReuseStrategy接口,后可以自定义路由的复用行为,避免不必要的组件销毁和重建,同时保持组件的状态。 以下是对Angular路由复用策略的详细介绍: 一、基 ...
前言 Angular 在 v18.1 推出了 Template 新语法 @let。 这个 @let 和上一篇教的 Control Flow @if, @for, @swtich, @defer 语法上类似,但是用途却差很多。 如果要给它们分类的话,@if @for @switch 可以算一类,@de ...
应用场景: 实现目标: 在网页端实现大文件(文件大小 >= 2 G) 断点续传 实际方案: 发送多次请求, 每次请求一部分文件数据, 然后通过续写将文件数据全部写入. 难点: 无法实现文件续写, 最后采用 StreamSaver 来解决这个问题. 1. 首先从 git hub 将 StreamSav ...
前言 Angular 从 v14 开始大改特改,改最多的就是编码风格。 以前是 class first,Decorator first,mutable first。 现在变成了 function first,immutable first。 本篇主要是探讨 v14 后,尤其是 Signal-base ...
前言 熟悉 Angular 的朋友都知道,Angular 有非常多的局限,许多事情它都做不好,打开 Github 一堆 2016 - 2017 的 Issues,时至今日都没有解决。 原因也很简单 -- Angular 团队的不作为。 通常我会把常见的 Angular 的局限记入在这篇 <<An ...
前言 我在 <初识 Angular> 文章里有提到 Angular 目前的断层问题。 大部分的 Angular 用户都停留在 v9.0 版本。 Why everyone stay v9.0? v9.0 是一个里程碑版本,Angular 从 v4.0 稳定版推出后,好几年都没有什么动静,直到 v9.0 ...
前言 读这么多原理,到底为了什么?真实项目中真的会用得到吗? 你正在疑惑 "知识的力量" 吗? 本篇会给一个非常非常好的案例,让你感悟 -- 知识如何用于实战。 记住,我的目的是让你感悟,而不是要你盲目相信知识。 很久很久以前的问题 (疑难杂症) 下面是我在 2020-11-06 记入的一个问题。 ...
前言 当你需要管理超过一个项目时,你就需要知道怎么使用 Angular Library。 你可以把多个项目共享的组件放到这个 Library 了,就像 Angular Material 那样。 参考 Sandro Roth – Building an Angular Library with mul ...
在你的 TypeScript 代码中,当调用 nextPage_TopSelling() 或 prevPage_TopSelling() 方法时,虽然你更新了 currentPage_TopSelling 的值并调用了 reloadTopSelling() 方法,但是 Angular 并不会自动检测 ...
前言 NgModule 在 Angular v14 以前是一门必修课。然而,自 Angular v14 推出 Standalone Component 以后,它的地位变得越来越边缘化了。 本教程从开篇到本篇,所有例子使用的都是 Standalone Component,一点 NgModule 的影子 ...
前言 HttpClient 是 Angular 对 XMLHttpRequest 和 Fetch 的封装。 HttpClient 的 DX (Developer Experience) 比 XMLHttpRequest 和 Fetch 都好,只是学习成本比较高,因为它融入了 RxJS 概念。 要深入 ...
前言 Control Flow 是 Angular v17 版本后推出的新模板语法,用来取代 NgIf、NgForOf、NgSwitch 这 3 个 Structure Directive。 Structure Directive 的好处是比较灵活,原理简单,但是即便用了微语法,它看上去还是相当繁琐 ...
项目中采用 wss 来建立的前后端连接, 但是并没有用到认证的证书, 所以自己用 openssl 生成了私钥, 自签名证书来使用: 这里就不再赘述 Wss 连接过程, 直接上手操作: 1. 生成私钥, 证书: 请查看: 使用 openssl 安装和生成证书 - 书源 - 博客园 (cnblogs.c ...
前言 在 Attribute Directives 属性型指令 文章中,我们学习过了指令。指令是没有 HTML 和 CSS 的组件,它单纯用于封装 JS 的部分。 这一篇我们将继续学习另一种指令 -- Structural Directive 结构型指令。 就代码而言,Structural Dire ...
前言 上一篇 Dynamic Component 我们有提到,作为 MVVM 框架的 Angular 需要有方法替代掉 2 个 DOM Manipulation: document.createElement template.content.clone Dynamic Component 便是替代 ...
前言 Angular 是 MVVM 框架。 MVVM 的宗旨是 "不要直接操作 DOM"。 在 Component 组件 の Template Binding Syntax 文章中,我们列举了一些常见的 DOM Manipulation。 const element = document.query ...
# 解决方案 使用`ngClass`和`ngStyle`可以进行样式的绑定。 ## ngStyle的使用 ngStyle 根据组件中的变量, isTextColorRed和fontSize的值来动态设置元素的颜色和字体大小 ```HTML This text has dynamic styles b ...