# @craft-native/svelte 中文文档

规范地址：https://npmcn.com/package/%40craft-native/svelte/

版本：0\.0\.413
npm 元数据更新时间：2026-10-31T21:01:45.748Z
中文译文更新时间：2026-10-31T21:17:37.996Z
软件包许可：MIT

本文由上游 README 机器翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40craft-native/svelte
原文对照：https://npmcn.com/package/%40craft-native/svelte/?lang=original
项目主页：https://github.com/craft-native/craft/tree/main/packages/svelte#readme
源码仓库：https://github.com/craft-native/craft

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：32.9 kB，34 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- peer 依赖：svelte ^3\.0\.0 \|\| ^4\.0\.0
- 首次发布：2026-08-23T01:42:07.127Z
- 最新版本发布：2026-10-31T21:01:45.363Z
- 已发布版本数：212（近 12 个月 212 个）

## 中文简介

用于Craft框架的细长绑定

## 安装

```sh
npm install @craft-native/svelte
```

也可以使用：`pnpm add @craft-native/svelte`、`yarn add @craft-native/svelte`、`bun add @craft-native/svelte`

## README

# @craft-native /苗条的

使用存储和操作为Craft框架进行精简绑定。

## 安装

```bash
npm install @craft-native/svelte
```

包中包含了它的TypeScript源代码，用于选择 `svelte` 出口条件。中的编译ESM或CommonJS条目 `dist`． 两个条目都公开相同的存储和操作。

## 使用

### 商店

```svelte
<script>
  import { craft, isReady, platform } from '@craft-native/svelte';
</script>

{#if $isReady}
  <p>Platform: {$platform?.platform}</p>
{/if}
```

### 窗口管理

```svelte
<script>
  import { windowActions, isFullscreen } from '@craft-native/svelte';
</script>

<button on:click={windowActions.maximize}>Maximize</button>
<button on:click={windowActions.toggleFullscreen}>
  {$isFullscreen ? 'Exit' : 'Enter'} Fullscreen
</button>
```

### 触觉行动

```svelte
<script>
  import { haptic } from '@craft-native/svelte';
</script>

<button use:haptic={'impact_medium'}>Tap Me</button>
```

### 烤面包

```svelte
<script>
  import { showToast } from '@craft-native/svelte';
</script>

<button on:click={() => showToast('Hello!')}>Show Toast</button>
```

### 文件系统

```svelte
<script>
  import { filesystem } from '@craft-native/svelte';

  let content = '';

  async function load() {
    content = await filesystem.readFile('/path/to/file.txt');
  }

  async function save() {
    await filesystem.writeFile('/path/to/file.txt', content);
  }
</script>

<textarea bind:value={content} />
<button on:click={load}>Load</button>
<button on:click={save}>Save</button>
```

### 数据库

```svelte
<script>
  import { onMount } from 'svelte';
  import { createDatabase } from '@craft-native/svelte';

  const db = createDatabase('/path/to/db.sqlite');
  let todos = [];

  onMount(async () => {
    todos = await db.query('SELECT * FROM todos');
  });
</script>

<ul>
  {#each todos as todo}
    <li>{todo.title}</li>
  {/each}
</ul>
```

### HTTP

```svelte
<script>
  import { http } from '@craft-native/svelte';

  let data = null;

  async function loadData() {
    data = await http.fetch('https://api.example.com/data');
  }
</script>

<button on:click={loadData}>Load Data</button>
{#if data}
  <pre>{JSON.stringify(data, null, 2)}</pre>
{/if}
```

## 许可证

麻省理工学院

## 常见问题

### @craft-native/svelte 是什么？

用于Craft框架的细长绑定

### 如何安装 @craft-native/svelte？

在项目目录运行 npm install @craft-native/svelte，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：svelte（^3\.0\.0 \|\| ^4\.0\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @craft-native/svelte 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @craft-native/svelte 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @craft-native/svelte 可以商用吗？

@craft-native/svelte 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @craft-native/svelte 还在维护吗？

最新版本 0\.0\.413 发布于 2026/11/01（2 天前）；至今共发布 212 个版本，其中过去 12 个月发布了 212 个；首次发布于 2026/08/23。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

