Angular Async Pipe详解

Async Pipe可以对 Angular 应用程序的更改检测策略产生巨大影响。如果到目前为止您还感到困惑,请详解读完全文。我们一起来了解一下吧!

在 Angular 中,Async Pipe本质上是执行以下三个任务的管道:

  • 它订阅一个observable或一个Promise并返回最后发出的值。
  • 每当发出新值时,它都会标记组件为需要要检查的。这意味着Angular将在下一个周期中为该组件运行Change Detector。
  • 当组件被销毁时,它会取消订阅可观察的内容。

此外,作为最佳实践,建议尝试使用 onPush 更改检测策略上的组件和异步管道来订阅可观察对象。

如果您是Angular的初学者,也许上面对异步管道的解释让人不知所措。因此,在本文中,我们将尝试使用代码示例逐步理解异步管道。只需创建一个新的Angular 项目并继续操作即可;在文章的最后,您应该对异步管道有一些深刻的了解。

阅读更多

如何在Angular应用中使用Ng2-charts

1. 前言

图表帮助我们以易于理解和交互的方式可视化大量数据。

在 Angular 中,我们有各种图表库来创建图表。

在本文中,我们将使用 Ng2-Charts 在 Angular 中开发出色的图表。

在本文中我们将会讲述

  • ng2-charts 介绍
  • 在 Angular 中安装 ng2-charts 的两种不同方法。
  • 创建条形图
  • 创建折线图
阅读更多

Angular图表库介绍

1. 前言

如今,数据分析是任何业务应用程序的重要组成部分。这有助于企业做出重要决策。以易于理解和交互的方式表示大量数据非常重要。
图表对于美观、易于理解和交互式的数据可视化非常有用。

JavaScript 中有不同的开源和付费图表库,可以实现漂亮的数据表示。

在本文中,我们将研究几款美观的, 易于交互的 Angular 图表库。

首先,我们将看到开源 Angular 图表库,稍后我们将研究其他付费 Angular 图表库.

阅读更多

将ngx-datatable替换为Angular material table

1. 前言

从 Angular 1.x 到 Angular 13 一直是用的 angular-data-table(for angularjs 1.x)和它的姊妹项目 ngx-datatable(for angular 2+), 但是最近需要将 Angular 项目从 Angular 14 升级到 Angular 16 的过程中发现了一些兼容性问题, 另外 ngx-datatable 也不支持 dark mode. 再次关注 ngx-datatable 以及网上的评论都有同感, ngx-datatable 的更新速度严重放缓了, 有些跟不上 Angular 更新的节奏了. 参考 reddit 上的一篇帖子Any better alternatives to ngx-datatable?, 也谈到了 ngx-datatable 更新放缓.

于是考虑将 ngx-datatable 组件替换掉, 这里有一些付费的项目, 在功能上可以完全替换, 比如ag-grid, Ignite UI for Angular Data Grid, Syncfusion Angular UI Components - Data Grid等等.

最后考察了 angular material table 在功能上完全服务我们的要求, sorting, pagination, server side pagination 之类的功能都有. 另外项目刚好使用的是 Material Design 设计风格, 那些付费方案的高级功能也用不上, 还要花时间学习, 另外考虑到 bundle 文件的大小, 最后坚定的选择了 Angular material table. 于是才有了这篇文章

阅读更多

在Linux上配置Tauri环境

1. 前言

本文讲述如何在linux操作系统中配置Tauri编译, 打包环境.

2. 安装依赖工具和开发包

您将需要安装几个系统依赖项,例如C编译器和webkit2gtk。以下是一些流行发行版的命令:

debian 系列Linux发行版,

阅读更多

创建gitlab pipeline打包Tauri跨平台应用程序

1. 前言

关于如何对 Tauri 项目进行打包和发布, 在 Tauri 的官方网站实际上只做了基本的介绍. 而且由于 Tauri 或者说是 Rust 对跨平台编译以及打包支持得不是很好.

所以到底如何在 Github.com 以外得平台进行编译打包, 讲得不够详细. 本人希望搜索到能对这方面有所补充的博客文章, 但是也没有找到. 包括一些英文方面的资料以及视频教程都不理想。 网上关于 Tauri 的 devops 自动化编译打包部署方面都是照本宣科, 按照官方的介绍使用 github action 进行配置. 而这些内容对于企业开发或者非开源项目来说帮助非常有限.

阅读更多

Tauri Mobile-使用JavaScript和Rust开发移动应用程序

1. 前言

Tauri 定位为一个为所有主要桌面平台构建微小、速度极快的二进制文件的框架。开发人员可以集成任何可编译为 HTML、JS 和 CSS 的前端框架来构建用户界面。应用程序的后端是一个 Rust 二进制文件,具有前端可以与之交互的 API。

阅读更多

使用Tauri和Angular创建桌面应用程序

1. 前言

Tauri 是一个应用程序构建工具包,可让您使用 Web 技术为所有主要桌面操作系统构建软件。核心库是用 Rust 编写的,用户界面几乎可以使用任何前端框架编写。它包括一个可选的、tree-shakeable JavaScript API用于舒适地访问底层操作系统、一个具有签名和验证的桌面二进制捆绑器、一个让您的用户保持最新版本的安全更新程序、一个可扩展的插件系统以及支持与操作系统整合,例如通知和应用程序托盘。

Tauri 使用简单且易于扩展。对于 Rust 编程语言的新手,Tauri 提供了一个舒适的学习环境,将与您一起成长。安装 Rust 后,创建您的第一个应用程序只需运行create-tauri-app. 但如果您希望保持 100% Rust 的安全性和舒适性,那么您根本不必使用 Node.js。

我们为注重安全、尊重隐私和具有环保意识的软件工程社区构建 Tauri

Tauri的设计哲学: 我们为注重安全、尊重隐私和具有环保意识的软件工程社区构建Tauri.

阅读更多

从Angular 13升级到Angular 15

1. 前言

升级应用程序或者框架是软件生命周期中非常重要的一项活动. 因为其有风险性, 很多人不愿意去做, 久而久之随着技术债务的积累变成了一件不能去做的事情.

在我的职业生涯中见到过很大这样逐渐失去生命活力的系统, 这里就不具体举例了, 以免引起不必要的争论, 明白的人自然明白.

阅读更多