使用 node:sqlite 快速开始 Runtime
这个示例使用 Node 内置的 node:sqlite,不安装 better-sqlite3,也不依赖 Node/Electron
native-addon ABI。
pnpm add @eidos.space/eidos-file@2.0.0同步 convenience API 使用 Node 22.23 或更新版本。严格的 EA-Connection-1.0
NodeSqliteConnectionPort profile 还需要 Node 24.16 或更新版本暴露的 limits。
创建并编辑文件
Section titled “创建并编辑文件”新建 create-tasks.mjs:
import { fileURLToPath } from "node:url"
import { createEidosFile, inspectEidosFile, openEidosFile,} from "@eidos.space/eidos-file/node-sqlite"
const file = fileURLToPath(new URL("./tasks.eidos", import.meta.url))
const writable = createEidosFile(file, { title: "Tasks", defaultTable: { name: "Tasks", fields: [ { name: "Title", type: "text", isRecordLabel: true, nullable: false }, { name: "Status", type: "select" }, ], },})
try { const table = writable.schema()[0].table const row = writable.insertRow(table.id, { Title: "Ship the integration", Status: "doing", }) console.log(row)} finally { writable.close()}
console.log(inspectEidosFile(file))
const readonly = openEidosFile(file, { readonly: true })try { console.log(readonly.validate({ level: "full" }))} finally { readonly.close()}运行:
node create-tasks.mjs生成的 tasks.eidos 可以在 Web Editor、Eidos Lite 或 eidos serve 中打开。
需要可传输的 Runtime 1.0 service 时,把 Runtime.create 或 Runtime.open 绑定到
conforming ConnectionPort,只向外暴露返回的 service 和可信 Host bridge。继续阅读
Runtime 与 Host。