# 导入

> 

当前只支持具名导入。

## 本地导入

```dj
import { greet } from "./utils.dj"
import { button as btn } from "../components/button.dj"
```

规则：

- 路径必须是静态字符串
- 必须显式写扩展名
- 当前唯一合法扩展名是 `.dj`
- 本地路径按当前文件目录相对解析

## 注册表导入

```dj
import { button } from "registry:ui/button.dj"
```

规则：

- `registry:` 导入不走本地相对路径解析
- 版本、缓存、锁定等规则交给构建系统或注册表处理

## 当前不支持

- 默认导入
- `import *`
- 动态导入
- 根路径别名
- 自动补全扩展名
- `.view` 扩展名

## 其他规则

- 只能导入被 `export` 的顶层符号
- 导入名冲突是编译错误
- 循环导入是编译错误
