将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.

阅读更多

SVG详解

1. 前言

SVG 是一种 XML 语言,类似 XHTML,可以用来绘制矢量图形,英文全称是Scalable Vector Graphics 可缩放矢量图, 是W3C的一项建议. 基于像素的图像, 如果被放大会看到明显的失真, 而svg是基于形状描述的, svg图像无论放大多少倍都不会失真.

阅读更多

百度统计的使用

1. 前言

百度统计是全球领先的中文网站流量分析平台,帮助企业收集网站访问数据,提供流量趋势、来源分析、转化跟踪、页面热力图、访问流等多种统计分析服务,同时与百度搜索、百度推广、云服务无缝结合,为网站的精细化运营决策提供数据支持,进而有效提高企业的投资回报率。

阅读更多

从Angular 13升级到Angular 15

1. 前言

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

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

阅读更多

Centos7 上安装 wordpress

1. 前言

当前环境说明:

OS: Centos 7.9

2. 安装要求

安装 WordPress 之前,服务器要求具备两个基本元素:

阅读更多

帮助系统设计2

1. 网站帮助中心的作用

  • 通过向客户表明您了解他们所面临的问题以及如何提供帮助来建立信任;
  • 通过回答常见问题来改善客户服务,增强专业的品牌形象;
  • 通过减少重复发送给支持人员的电话和电子邮件,节省时间和金钱;
  • 增强您在搜索引擎中的知名度(包含更多关键词的帮助中心页面更易被搜索引擎喜欢);
  • 通过轻松找到他们要寻找的内容而不是搜索站点来改善用户体验。将答案直接链接到博客文章或内容页面可以使访问者更轻松地获取其他信息;
阅读更多

使用stomp实现服务器端向web客户端推送数据

1. 前言

在上篇文章java实现websocket的五种方式, 我详细讲述了使用java实现websocket的五种方式.
五种方式都集中在服务器端的实现, 客户端我们使用的是一个在线测试工具进行测试的. 只有针对stomp这种方式我自己写了一个javascript版本的客户端. 但是随着项目的推进, 发现整个体系就像魔方或拼图一样, 在完整体系中还缺少了一块, 那就是java客户端去连接stomp websocket服务. 其作用是,在服务器端主动向客户端发送消息时, 通过stomp客户端连接stomp websocket服务, 将消息发布到某个topic, 最终被订阅消息的前端页面接收到. 三者之间的关系 java client -> stomp websocket服务 -> 前端页面. 采用的是消息订阅模式, 消息订阅并不是pull, 实际是push.

阅读更多