返回首页
最新
我几年前在这里发布了NumPad v1,当时它不过是我编写的计算器引擎的一个简单CodeMirror封装。<p>现在我已经将其重写为一个渐进式Web应用(PWA),支持多个文档,并将其持久化到IndexedDB中,同时为付费用户提供同步服务。同步功能在后台由Automerge[1]处理,这应该使得文档共享变得相对简单。<p>[1] <a href="https://automerge.org/" rel="nofollow">https://automerge.org/</a>
HarmonyOS 5 新闻应用日历事件管理实现
摘要
本文介绍了在 HarmonyOS 5.0 新闻应用中实现日历事件管理功能的过程,包括绑定弹出窗口、添加日历事件和显示事件详情。该功能使用 ArkTS 语言实现。
代码实现
1. 绑定弹出组件
```javascript
.bindSheet($$this.isShow, this.AccountDetailBuilder, {
height: 500
})
```
2. 实现添加日历事件的功能
```javascript
async addCalendarEvent(title: string) {
await this.currCalendar?.addEvent({
title: title,
startTime: Number(new Date('2025-12-12 19:00:00')),
endTime: Number(new Date('2025-12-12 21:00:00')),
reminderTime: [0, 5, 10, 60],
type: calendarManager.EventType.NORMAL
})
this.currCalendarEvents = await this.currCalendar?.getEvents() || []
}
```
3. 构建账户详情组件以显示事件列表
```javascript
@Builder
AccountDetailBuilder() {
Column({ space: 15 }) {
Text(this.currCalendar?.getAccount().displayName)
.fontSize(24)
.fontWeight(500)
Column({ space: 15 }) {
Button('订阅 CNN 新闻')
.onClick(() => {
this.addCalendarEvent('订阅 CNN 新闻')
})
Button('订阅 BBC 新闻')
.onClick(() => {
this.addCalendarEvent('订阅 BBC 新闻')
})
}
Text('我的订阅 : ')
List({ space: 15 }) {
ForEach(this.currCalendarEvents, (event: calendarManager.Event) => {
ListItem(){
Column({ space: 5 }){
Text(event.title)
Text(new Date(event.startTime).toString())
}
.padding({ left: 15, right: 15 })
.justifyContent(FlexAlign.Center)
.alignItems(HorizontalAlign.Start)
.width('100%')
.height(60)
.borderRadius(12)
.backgroundColor('#DDDDDD')
}
})
}
}
.padding(15)
.alignItems(HorizontalAlign.Start)
}
```
HarmonyOS 5 新闻应用日历账户管理实现
摘要
本文介绍了在 HarmonyOS 5.0 新闻应用中实现日历账户管理功能的过程。该功能包括添加特定类型日历账户的按钮以及删除日历账户的构建器。使用 ArkTS 语言实现账户的添加和删除操作。
1. 实现账户添加按钮组件
```
Column({ space: 15 }){
Button('添加体育新闻账户')
.onClick(async () => {
await this.addAccount('体育新闻', '#006699')
this.list = await this.calendarMgr.getAllCalendars()
})
Button('添加国际新闻账户')
.onClick(async () => {
await this.addAccount('国际新闻', '#ffaa00')
this.list = await this.calendarMgr.getAllCalendars()
})
}
.margin(15)
```
2. 实现账户删除构建器
```
@Builder
DeleteBuilder(calendar: calendarManager.Calendar) {
Text('删除')
.fontSize(24)
.width(120)
.textAlign(TextAlign.Center)
.height('100%')
.onClick(async () => {
await this.calendarMgr.deleteCalendar(calendar)
this.list = await this.calendarMgr.getAllCalendars()
})
}
```
我在TCP方面卡了很多小时。感觉整体概念还没有完全理解。虽然我觉得自己理解了大部分内容,但仍然有些困惑。现在我在学习回退重传和类似的内容。滑动窗口……数据包格式的记忆并不是问题。我想深入理解内部基础设施工程。
大家好,我想请教一下你们的意见。
我们建立了 vykee.co 作为一个引导工具。我们的想法是通过隐藏高级功能,使 SaaS 界面更易于理解,特别是对新用户而言。
其中一个主要功能是标签系统,允许 SaaS 公司对元素进行标记,并将多个元素组合成一个功能。因此,基本上我们有一个前端的用户界面层(每个元素和功能都有独特的标识符和注释)。
我认为这个用户界面层对大型语言模型(LLMs)可能非常有用:如果我们将所有这些用户界面信息放在一个简单的 llms.md 文件中(类似于 robots.txt,但针对 LLMs),它们就能比解析 HTML 或依赖截图更好地理解界面。
不过,这仅对基于浏览器的代理有帮助。
我们曾讨论过,有人认为与其押注于基于浏览器的代理,不如押注于 MCP,因为后者是标准且更广泛采用的。这个想法是建立一个 MCP,并将其连接到带标签的前端元素。
你们认为继续押注于基于浏览器的代理还有意义吗?
谢谢!
我很高兴地分享 AGI-SaaS v1.0.0,这是一个用于检索增强生成(RAG)的开源 Python 框架:
• 基于插件的 LLM 流水线
• 异步并发 API 调用
• 支持 OpenRouter、OpenAI 和 llama.cpp
开始使用:
pip install agi-saas==1.0.0
欢迎反馈和建议!