## 主要改进 ### 1. 题型标题和分值说明显示优化 - 将 Ant Design Text 组件改为原生 span 元素,确保在打印时不换行 - 将分值说明嵌套到题型标题内部,强制同行显示 - 适用于所有题型:填空题、判断题、单选题、多选题、简答题、论述题 ### 2. 打印分页控制优化 - 添加 page-break-after: avoid 和 page-break-inside: avoid 到关键元素 - 试卷标题和考试说明保持在同一页 - 考试说明和填空题不分页 - 题型标题和第一道题保持在同一页 - 每道题目的所有部分(题干、选项、答题区域)保持完整,不被分页打断 - 题型之间尽量紧密排列,减少空白 ### 3. 样式细节调整 - 题型标题使用 flex 布局,确保标题和说明在同一行 - 统一使用 marginLeft: 8px 作为标题和说明之间的间距 - 保持 A4 纸张 1cm 页边距设置 ## 修改文件 - web/src/pages/ExamPrint.module.less - 打印样式优化 - web/src/pages/ExamPrint.tsx - 题型标题结构调整 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
44 lines
1.1 KiB
TypeScript
44 lines
1.1 KiB
TypeScript
import { defineConfig } from 'vite'
|
|
import react from '@vitejs/plugin-react'
|
|
import path from 'path'
|
|
|
|
// https://vitejs.dev/config/
|
|
export default defineConfig({
|
|
plugins: [react()],
|
|
base: './', // 使用相对路径,确保打包后资源路径正确
|
|
resolve: {
|
|
alias: {
|
|
'@': path.resolve(__dirname, './src'),
|
|
},
|
|
},
|
|
css: {
|
|
preprocessorOptions: {
|
|
less: {
|
|
javascriptEnabled: true,
|
|
// antd 主题定制 - 白色毛玻璃风格
|
|
modifyVars: {
|
|
'@primary-color': '#007aff', // macOS 蓝色
|
|
'@link-color': '#007aff', // 链接色
|
|
'@border-radius-base': '12px', // 组件圆角
|
|
'@layout-body-background': '#ffffff', // 白色背景
|
|
'@component-background': 'rgba(255, 255, 255, 0.8)', // 半透明组件背景
|
|
'@border-color-base': 'rgba(0, 0, 0, 0.06)', // 边框色
|
|
},
|
|
},
|
|
},
|
|
},
|
|
server: {
|
|
port: 3000,
|
|
proxy: {
|
|
'/api': {
|
|
target: 'http://127.0.0.1:8080',
|
|
changeOrigin: true,
|
|
},
|
|
},
|
|
},
|
|
build: {
|
|
outDir: 'dist',
|
|
assetsDir: 'assets',
|
|
},
|
|
})
|