Files
menav/src

MeNav 源代码目录

目录

目录概述

src 目录包含 MeNav 项目的所有源代码,按照功能和职责进行了明确的分层组织:

  • 根目录:核心功能实现
  • helpers 子目录:辅助功能实现

源代码结构分工

根目录函数(核心功能)

根目录下的js文件实现了应用的核心功能每个文件负责特定领域

  • generator.js: 站点生成器的核心实现

    • 负责将配置文件转换为HTML网站
    • 处理模板渲染、配置解析和文件输出
    • 控制整个生成流程
  • script.js: 客户端功能的核心实现

    • 处理用户界面交互逻辑
    • 实现搜索、导航、主题切换等功能
    • 管理页面状态和响应式布局
  • bookmark-processor.js: 书签处理工具

    • 转换浏览器书签为MeNav配置格式
    • 提供书签导入功能

helpers 目录函数(辅助功能)

helpers 目录下的函数提供辅助性支持主要服务于Handlebars模板系统

  • formatters.js: 格式化函数

    • 日期格式化
    • 文本处理
    • 内容展示辅助
  • conditions.js: 条件判断函数

    • 比较操作
    • 逻辑运算
    • 条件检查
  • utils.js: 工具函数

    • 数组处理
    • 对象操作
    • 通用辅助方法
  • index.js: 助手函数注册中心

    • 统一导入所有助手函数
    • 提供注册函数到Handlebars实例的方法
    • 定义核心HTML处理函数

函数职责分工

核心函数(根目录)

根目录下的函数负责"做什么"——实现具体的业务逻辑和功能:

  • 应用入口和流程控制
  • 用户交互响应
  • 数据处理和转换
  • 文件生成和输出

这些函数通常:

  • 直接面向最终用户需求
  • 控制程序主流程
  • 调用辅助函数完成特定任务

辅助函数helpers目录

helpers目录下的函数负责"怎么做"——提供可重用的工具方法:

  • 为模板渲染提供扩展能力
  • 处理数据格式化和转换
  • 提供通用的条件判断逻辑
  • 实现常见的工具操作

这些函数通常:

  • 高度重用性和通用性
  • 专注于单一职责
  • 被核心函数调用

扩展和修改指南

添加新的核心功能

如需添加新的核心功能应在src根目录创建新的js文件或修改现有文件确保

  • 文件名清晰反映功能用途
  • 保持单一责任原则
  • 适当调用辅助函数,避免重复实现通用功能

添加新的辅助函数

如需添加新的辅助函数应在helpers目录下相应文件中添加并在index.js中注册

  • 按功能类型放入正确的文件formatters/conditions/utils
  • 编写清晰的JSDoc注释
  • 更新README.md文档
  • 在index.js中添加导出和注册