【教案生成平台】实战教程一:从零搭建现代化教师辅助平台 (环境与架构)

简介: 本教程带你从零搭建基于Vue3的教师辅助平台,解决备课、出卷、做课件痛点。采用Vite+Pinia+VueRouter,实现手绘风格UI与模块化架构,夯实前端工程化基础。

实战教程一:从零搭建现代化教师辅助平台 (环境与架构)

1. 项目背景与目标

本项目旨在打造一个基于 Vue 3 的现代化教师辅助平台,核心解决教师备课、出卷、做课件的三大痛点。
技术选型:

  • 核心框架: Vue 3 (Composition API)
  • 构建工具: Vite (极速开发体验)
  • 路由管理: Vue Router 4
  • 状态管理: Pinia
  • UI 风格: 手绘风格 (Architects Daughter 字体 + CSS3)

2. 初始化项目

首先,使用 Vite 快速初始化项目骨架。

# 创建项目
npm create vite@latest teacher -- --template vue

# 进入目录
cd teacher

# 安装基础依赖
npm install vue-router pinia axios sass localforage file-saver @vueuse/core

3. 目录结构设计

一个清晰的目录结构是项目成功的关键。我们按照功能模块划分:

src/
├── api/             # API 接口封装 (AI 接口)
├── assets/          # 静态资源 (字体、图片)
├── components/      # 公共组件 (Toolbar, Modal等)
├── config/          # 配置文件 (模型配置, 常量)
├── router/          # 路由定义
├── store/           # Pinia 状态仓库
├── utils/           # 工具函数
├── views/           # 页面级组件
│   ├── LessonPlanGenerator.vue  # 教案生成
│   ├── PPTEditor.vue            # PPT 编辑器
│   └── ExamEditor.vue           # 试卷编辑器
├── App.vue          #以此为根组件
└── main.js          # 入口文件

4. 路由配置 (Router Setup)

src/router/index.js 中配置核心导航。我们采用单页应用 (SPA) 模式,通过路由切换不同的编辑器功能。

import {
    createRouter, createWebHistory } from "vue-router";
import LessonPlanGenerator from "../views/LessonPlanGenerator.vue";
import ExamEditor from "../views/ExamEditor.vue";
import PPTEditor from "../views/PPTEditor.vue";

const routes = [
  {
    path: "/", name: "Home", component: LessonPlanGenerator }, // 默认首页为教案生成
  {
    path: "/exam", name: "ExamEditor", component: ExamEditor },
  {
    path: "/ppt", name: "PPTEditor", component: PPTEditor },
];

const router = createRouter({
   
  history: createWebHistory("/teacher/"), // 设置 Base URL
  routes,
});

export default router;

5. 全局状态管理 (Pinia)

我们需要一个全局 Store 来管理用户的设置(如 AI 模型选择、API Key 等),这对于后续所有 AI 功能至关重要。

创建 src/store/settings.js:

import {
    defineStore } from "pinia";
import {
    ref } from "vue";

export const useSettingsStore = defineStore("settings", () => {
   
  const apiKey = ref(localStorage.getItem("api_key") || "");
  const selectedModel = ref("qwen-plus");

  function setApiKey(key) {
   
    apiKey.value = key;
    localStorage.setItem("api_key", key);
  }

  return {
    apiKey, selectedModel, setApiKey };
});

6. UI 风格基调:手绘风

为了让工具更有“黑板”或“手写笔记”的亲切感,我们定义全局 CSS。

src/style.css 中:

body {
   
  background-color: #fdfbf7; /* 米黄色纸张质感 */
  color: #2c3e50;
}

/* 通用按钮样式 - 手绘风格 */
button {
   
  border: 2px solid #2c3e50;
  border-radius: 255px 15px 225px 15px / 15px 225px 15px 255px; /* 不规则圆角 */
  transition: transform 0.1s;
}
button:hover {
   
  transform: scale(1.05) rotate(-1deg);
}

在线体验

演示链接: https://www.ytecn.com/teacher/
git链接: https://github.com/tcshowhand/teacher/

演示截图

091921dh7jw9i39bzii39g.png

总结

至此,我们已经搭建好了项目的“地基”。我们拥有了路由导航、状态管理以及独特的视觉风格。接下来,我们将逐一攻克核心功能模块。

相关文章
|
8天前
|
人工智能 JavaScript Linux
【Claude Code 全攻略】终端AI编程助手从入门到进阶(2026最新版)
Claude Code是Anthropic推出的终端原生AI编程助手,支持40+语言、200k超长上下文,无需切换IDE即可实现代码生成、调试、项目导航与自动化任务。本文详解其安装配置、四大核心功能及进阶技巧,助你全面提升开发效率,搭配GitHub Copilot使用更佳。
|
2天前
|
JSON API 数据格式
OpenCode入门使用教程
本教程介绍如何通过安装OpenCode并配置Canopy Wave API来使用开源模型。首先全局安装OpenCode,然后设置API密钥并创建配置文件,最后在控制台中连接模型并开始交互。
|
10天前
|
存储 人工智能 自然语言处理
OpenSpec技术规范+实例应用
OpenSpec 是面向 AI 智能体的轻量级规范驱动开发框架,通过“提案-审查-实施-归档”工作流,解决 AI 编程中的需求偏移与不可预测性问题。它以机器可读的规范为“单一真相源”,将模糊提示转化为可落地的工程实践,助力开发者高效构建稳定、可审计的生产级系统,实现从“凭感觉聊天”到“按规范开发”的跃迁。
1485 16
|
8天前
|
人工智能 JavaScript 前端开发
【2026最新最全】一篇文章带你学会Cursor编程工具
本文介绍了Cursor的下载安装、账号注册、汉化设置、核心模式(Agent、Plan、Debug、Ask)及高阶功能,如@引用、@Doc文档库、@Browser自动化和Rules规则配置,助力开发者高效使用AI编程工具。
1201 5
|
6天前
|
云安全 安全
免费+限量+领云小宝周边!「阿里云2026云上安全健康体检」火热进行中!
诚邀您进行年度自检,发现潜在风险,守护云上业务连续稳健运行
1177 2
|
9天前
|
消息中间件 人工智能 Kubernetes
阿里云云原生应用平台岗位急招,加入我们,打造 AI 最强基础设施
云原生应用平台作为中国最大云计算公司的基石,现全面转向 AI,打造 AI 时代最强基础设施。寻找热爱技术、具备工程极致追求的架构师、极客与算法专家,共同重构计算、定义未来。杭州、北京、深圳、上海热招中,让我们一起在云端,重构 AI 的未来。
|
12天前
|
IDE 开发工具 C语言
【2026最新】VS2026下载安装使用保姆级教程(附安装包+图文步骤)
Visual Studio 2026是微软推出的最新Windows专属IDE,启动更快、内存占用更低,支持C++、Python等开发。推荐免费的Community版,安装简便,适合初学者与个人开发者使用。
1243 11

热门文章

最新文章