欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 国际 > Umi 框架 quickstart

Umi 框架 quickstart

2025/6/21 19:48:34 来源:https://blog.csdn.net/qq_41472205/article/details/148621423  浏览:    关键词:Umi 框架 quickstart

目录

    • 1. 创建 Umi 项目
    • 2. 进入项目目录并启动开发服务器
    • 3. 项目结构说明
    • 4. 路由系统
    • 5. 布局系统
    • 6. 页面开发
      • 首页 (src/pages/index.tsx)
      • 文档页 (src/pages/docs.tsx)
    • 7. 添加新页面
    • 相关资源链接

1. 创建 Umi 项目

首先,使用 pnpm 来创建一个新的 Umi 项目:

pnpm dlx create-umi@latest

在交互式命令行中,您需要回答以下问题:

  • 目标文件夹名称:输入 my-app
  • 选择 Umi 应用模板:选择 Simple App(简单应用)
  • 选择包管理器:选择 pnpm
  • 选择 npm 镜像源:选择 taobao(淘宝镜像,国内下载速度更快)

2. 进入项目目录并启动开发服务器

cd my-app
pnpm dev

执行上述命令后,开发服务器将启动,默认情况下您可以通过 http://localhost:8000 访问您的应用。
在这里插入图片描述

3. 项目结构说明

创建的 Umi 项目具有以下结构:

my-app/
├── .gitignore          # Git 忽略文件
├── .npmrc              # npm 配置
├── .umirc.ts           # Umi 配置文件
├── package.json        # 项目依赖和脚本
├── pnpm-lock.yaml      # pnpm 锁文件
├── src/                # 源代码目录
│   ├── assets/         # 静态资源目录
│   │   └── yay.jpg     # 示例图片
│   ├── layouts/        # 布局组件目录
│   │   ├── index.less  # 布局样式
│   │   └── index.tsx   # 布局组件
│   └── pages/          # 页面目录
│       ├── docs.tsx    # 文档页面
│       └── index.tsx   # 首页
├── tsconfig.json       # TypeScript 配置
└── typings.d.ts        # TypeScript 类型声明

4. 路由系统

Umi 使用基于文件系统的约定式路由,但在这个简单应用模板中,路由是在 .umirc.ts 文件中配置的:

import { defineConfig } from "umi";export default defineConfig({routes: [{ path: "/", component: "index" },{ path: "/docs", component: "docs" },],npmClient: 'pnpm',
});

这里定义了两个路由:

  • / - 首页,对应 src/pages/index.tsx 组件
  • /docs - 文档页,对应 src/pages/docs.tsx 组件

5. 布局系统

src/layouts/index.tsx 文件定义了全局布局,它会包裹所有的路由页面:

import { Link, Outlet } from 'umi';
import styles from './index.less';export default function Layout() {return (<div className={styles.navs}><ul><li><Link to="/">Home</Link></li><li><Link to="/docs">Docs</Link></li><li><a href="https://github.com/umijs/umi">Github</a></li></ul><Outlet /></div>);
}

<Outlet /> 组件是路由内容的占位符,当前路由对应的页面会渲染在这个位置。

6. 页面开发

首页 (src/pages/index.tsx)

import yayJpg from '../assets/yay.jpg';export default function HomePage() {return (<div><h2>Yay! Welcome to umi!</h2><p><img src={yayJpg} width="388" /></p><p>To get started, edit <code>pages/index.tsx</code> and save to reload.</p></div>);
}

在这里插入图片描述

文档页 (src/pages/docs.tsx)

const DocsPage = () => {return (<div><p>This is umi docs.</p></div>);
};export default DocsPage;

在这里插入图片描述

7. 添加新页面

要添加新页面,您需要:

  1. .umirc.ts 中添加新的路由配置
// .umirc.ts 中添加
{ path: "/about", component: "about" }
  1. 添加About页:about.tsx
const AboutPage = () => {return (// src/layouts/index.tsx 中添加<div><p>About</p></div>);};
export default AboutPage;

在这里插入图片描述

相关资源链接

  • Umi 官方文档
  • Ant Design - 推荐与 Umi 配合使用的 UI 组件库
  • Umi GitHub 仓库

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词