feat(app): 添加多模板关于我们页面及相关路由和404页面

- 新增404页面,优化未找到页面体验,避免被搜索引擎索引
- 增加文件代理接口,隐藏真实文件服务器地址,支持文件请求代理
- 实现/article、/case、/product及/page动态路由兼容列表与详情展示
- 添加动态CMS页面兼容入口处理旧式路径,统一路由与SEO设置
- 新增模板1、模板7、模板2、模板3关于我们页面,实现多模板支持
- 模板增强支持CMS单页内容加载及SEO信息动态设置
- 配置环境变量及Git忽略文件规则辅助开发和构建环境管理
This commit is contained in:
2026-09-08 12:13:44 +08:00
commit 2b69686795
381 changed files with 59891 additions and 0 deletions
+31
View File
@@ -0,0 +1,31 @@
export interface ConsultPreset {
/** 预填需求内容(如产品名),便于后台识别客户意向 */
need?: string
/** 来源标记,便于后台统计转化来源 */
source?: string
}
/**
* 全站咨询弹窗状态
*
* 任意页面/组件调用 openConsult() 即可弹出咨询表单弹窗,
* 弹窗内提交到 useCms().submitForm()POST /api/form/submit)。
* 用 useState 保证 SSR 与客户端共享同一份状态。
*/
export function useConsult() {
const isOpen = useState<boolean>('consult-open', () => false)
const presetNeed = useState<string>('consult-preset-need', () => '')
const source = useState<string>('consult-source', () => '')
function openConsult(preset?: ConsultPreset) {
presetNeed.value = preset?.need || ''
source.value = preset?.source || ''
isOpen.value = true
}
function closeConsult() {
isOpen.value = false
}
return { isOpen, presetNeed, source, openConsult, closeConsult }
}