framework.html 13.5 KB
<!DOCTYPE html>
<html lang="en-US">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <title>系统框架 | 买买买开发文档</title>
    <meta name="description" content="买买买开发文档">
    
    
    <link rel="preload" href="/assets/css/0.styles.72ea4e23.css" as="style"><link rel="preload" href="/assets/js/app.a6d4693a.js" as="script"><link rel="preload" href="/assets/js/2.0f93069c.js" as="script"><link rel="preload" href="/assets/js/12.6e019225.js" as="script"><link rel="prefetch" href="/assets/js/10.ef686e6b.js"><link rel="prefetch" href="/assets/js/11.b9d66403.js"><link rel="prefetch" href="/assets/js/13.c4d61fd4.js"><link rel="prefetch" href="/assets/js/14.94ce47cf.js"><link rel="prefetch" href="/assets/js/15.b0aed960.js"><link rel="prefetch" href="/assets/js/16.eaef222c.js"><link rel="prefetch" href="/assets/js/17.737b7002.js"><link rel="prefetch" href="/assets/js/3.09335edb.js"><link rel="prefetch" href="/assets/js/4.d1a4c2b6.js"><link rel="prefetch" href="/assets/js/5.811a1bdd.js"><link rel="prefetch" href="/assets/js/6.1745f7c4.js"><link rel="prefetch" href="/assets/js/7.bea9dafa.js"><link rel="prefetch" href="/assets/js/8.a4603644.js"><link rel="prefetch" href="/assets/js/9.e66f3185.js">
    <link rel="stylesheet" href="/assets/css/0.styles.72ea4e23.css">
  </head>
  <body>
    <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/logo.png" alt="买买买开发文档" class="logo"> <span class="site-name can-hide">买买买开发文档</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/" class="nav-link">主页</a></div><div class="nav-item"><a href="/product/" class="nav-link">公司产品</a></div><div class="nav-item"><a href="/util/" class="nav-link">协作工具</a></div><div class="nav-item"><div class="dropdown-wrapper"><a class="dropdown-title"><span class="title">工作团队</span> <span class="arrow right"></span></a> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/team/design/" class="nav-link">产品设计</a></li><li class="dropdown-item"><!----> <a href="/team/backend/" class="nav-link">服务端</a></li><li class="dropdown-item"><!----> <a href="/team/frontend/" class="nav-link router-link-active">前端</a></li><li class="dropdown-item"><!----> <a href="/team/android/" class="nav-link">安卓端</a></li><li class="dropdown-item"><!----> <a href="/team/ios/" class="nav-link">苹果端</a></li><li class="dropdown-item"><!----> <a href="/team/quality/" class="nav-link">测试组</a></li></ul></div></div><div class="nav-item"><a href="/guide/" class="nav-link">文档写作平台入门介绍</a></div> <!----></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/" class="nav-link">主页</a></div><div class="nav-item"><a href="/product/" class="nav-link">公司产品</a></div><div class="nav-item"><a href="/util/" class="nav-link">协作工具</a></div><div class="nav-item"><div class="dropdown-wrapper"><a class="dropdown-title"><span class="title">工作团队</span> <span class="arrow right"></span></a> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/team/design/" class="nav-link">产品设计</a></li><li class="dropdown-item"><!----> <a href="/team/backend/" class="nav-link">服务端</a></li><li class="dropdown-item"><!----> <a href="/team/frontend/" class="nav-link router-link-active">前端</a></li><li class="dropdown-item"><!----> <a href="/team/android/" class="nav-link">安卓端</a></li><li class="dropdown-item"><!----> <a href="/team/ios/" class="nav-link">苹果端</a></li><li class="dropdown-item"><!----> <a href="/team/quality/" class="nav-link">测试组</a></li></ul></div></div><div class="nav-item"><a href="/guide/" class="nav-link">文档写作平台入门介绍</a></div> <!----></nav>  <ul class="sidebar-links"><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>系统框架</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/team/frontend/framework.html#管理平台项目基本目录结构描述" class="sidebar-link">管理平台项目基本目录结构描述</a><ul class="sidebar-sub-headers"></ul></li><li><a href="/team/frontend/framework.html#功能插件" class="sidebar-link">功能插件</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/team/frontend/framework.html#拼图验证码插件" class="sidebar-link">拼图验证码插件</a></li><li class="sidebar-sub-header"><a href="/team/frontend/framework.html#短信验证" class="sidebar-link">短信验证</a></li><li class="sidebar-sub-header"><a href="/team/frontend/framework.html#侧边栏抽屉" class="sidebar-link">侧边栏抽屉</a></li><li class="sidebar-sub-header"><a href="/team/frontend/framework.html#数据表格" class="sidebar-link">数据表格</a></li><li class="sidebar-sub-header"><a href="/team/frontend/framework.html#选择器" class="sidebar-link">选择器</a></li></ul></li><li><a href="/team/frontend/framework.html#业务组件" class="sidebar-link">业务组件</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/team/frontend/framework.html#数据导入导出" class="sidebar-link">数据导入导出</a></li><li class="sidebar-sub-header"><a href="/team/frontend/framework.html#数据下载-导出" class="sidebar-link">数据下载/导出</a></li><li class="sidebar-sub-header"><a href="/team/frontend/framework.html#操作权限应用" class="sidebar-link">操作权限应用</a></li><li class="sidebar-sub-header"><a href="/team/frontend/framework.html#选择器-2" class="sidebar-link">选择器</a></li></ul></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="系统框架"><a href="#系统框架" aria-hidden="true" class="header-anchor">#</a> 系统框架</h1> <p>管理平台项目框架目标使用规范说明及部分系统 API 描述,目前仅适用于 <code>素+管理平台</code> 项目</p> <h2 id="管理平台项目基本目录结构描述"><a href="#管理平台项目基本目录结构描述" aria-hidden="true" class="header-anchor">#</a> 管理平台项目基本目录结构描述</h2> <p>项目结构目录树如下</p> <div class="language- extra-class"><pre class="language-text"><code>项目根目录
│  .browserslistrc   浏览器版本配置
│  .editorconfig     编辑器配置
│  .env.development  开发环境下使用的环境变量配置文件
│  .env.production   生产环境下使用的环境变量配置文件
│  .env.test         单元测试环境下使用的环境变量配置文件
│  .eslintrc.js      ESLint 配置
│  .gitignore        设置 git 忽略上传的内容
│  babel.config.js   项目脚本兼容版本设置
│  cypress.json      cypress 配置文件
│  Dockerfile        docker 配置文件
│  package.json      项目总体描述及依赖描述
│  postcss.config.js 预编译样式
│  vue.config.js     vue-cli 脚手架配置及 webpack 配置

├─public 静态资源文件目录
│      favicon.ico 网站图标
│      index.html  网站实际入口

├─src
│  │  main.js   项目主入口
│  │  
│  ├─assets     项目相关资产 / 附件,通常用于存放图片资源
│  │          
│  ├─business   业务处理逻辑、框架相关 API
│  │          
│  ├─components 自定义业务组件
│  │                  
│  ├─config 项目相关配置
│  │      constants.js       常量配置
│  │      directives.js      自定义指令集配置
│  │      element-plugins.js element-ui 插件配置
│  │      menu-path.js       系统菜单及路由匹配关系
│  │      plugins.js         项目中除 element-ui 外的插件引用配置
│  │      polyfill.js        自定义脚本兼容
│  │      velidateData.js    自定义表单校验规则
│  │      
│  ├─layouts 整体布局结构
│  │              
│  ├─mixins  公共抽象模型
│  │          
│  ├─plugins 系统公共插件
│  │              
│  ├─router  vue-router 路由配置
│  │      
│  ├─store   Vuex 与本地缓存的相关处理
│  │      
│  ├─style   自定义样式文件收纳
│  │      
│  ├─utils   工具类
│  │          
│  └─views   系统业务功能页面
│      │  
│      ├─alonePage 独立页
│      │      
│      ├─demo      框架组件、API 实例
│      │      
│      └─inner     移动端内嵌页

└─tests
    ├─e2e    端对端测试

    ├─sample 部分数据样例

    └─unit   单元测试
          .eslintrc.js 针对单元测试的 eslint 配置
          setup.js     单元测试的前置处理

</code></pre></div><h2 id="功能插件"><a href="#功能插件" aria-hidden="true" class="header-anchor">#</a> 功能插件</h2> <p>完全不与业务耦合的功能插件/组件,此类型的成果代表着不以项目类型或业务为限,可随意组合使用</p> <h3 id="拼图验证码插件"><a href="#拼图验证码插件" aria-hidden="true" class="header-anchor">#</a> 拼图验证码插件</h3> <p><img src="/frontend/plugins/captcha.png" alt="captcha"></p> <p><strong>拼图拖拽模式</strong></p> <p><img src="/frontend/plugins/captcha1.png" alt="captcha1"></p> <p><strong>随机文字点选模式</strong></p> <p>图形验证码插件(极验),当前使用 <strong>免费</strong> 版本,限制为 200 次 / 小时的使用频率,且免费版仅能使用拼图拖拽或文字选择等形式的其中一种,收费版本可随出现验证类型或根据验证级别的提升智能选择不同验证方式和难度,且可定制背景图片</p> <p><strong>全部验证形式</strong></p> <p><img src="/frontend/plugins/captcha-all.png" alt="captcha-all"></p> <blockquote><p>该功能需要服务端配套相关功能</p></blockquote> <h3 id="短信验证"><a href="#短信验证" aria-hidden="true" class="header-anchor">#</a> 短信验证</h3> <p><img src="/frontend/plugins/sms.png" alt="sms"></p> <p>提供了默认形态界面的完整功能,也允许只引用底层实现 API 适配自定义短信验证场景</p> <h3 id="侧边栏抽屉"><a href="#侧边栏抽屉" aria-hidden="true" class="header-anchor">#</a> 侧边栏抽屉</h3> <p>一个可从屏幕边缘抽屉式滑出的内容展示层</p> <p><img src="/frontend/plugins/slide.png" alt="slide"></p> <h3 id="数据表格"><a href="#数据表格" aria-hidden="true" class="header-anchor">#</a> 数据表格</h3> <p>带有分页栏的数据表格,集成了单选、多选、跨页选择等功能</p> <p><img src="/frontend/plugins/grid.png" alt="grid"></p> <blockquote><p>该插件依赖于 element-ui,以及服务端数据接口</p></blockquote> <h3 id="选择器"><a href="#选择器" aria-hidden="true" class="header-anchor">#</a> 选择器</h3> <p>用于挑选数据的选择器</p> <p><strong>选择器基本规则说明</strong></p> <p>所有选择器应包含以下三个元素</p> <ul><li>右上角 <code>X</code> 关闭按钮,点击后仅关闭选择器,不触发事件响应</li> <li><code>清空</code> 按钮,清空选择器已选择项目,但不关闭窗口</li> <li><code>确定</code> 按钮,触发回调事件,响应数据变更并关闭选择器窗口</li></ul> <p><img src="/frontend/plugins/selector-base.png" alt="selector-base"></p> <ul><li>单列数据穿梭框</li></ul> <p><img src="/frontend/plugins/transfer.png" alt="transfer"></p> <h2 id="业务组件"><a href="#业务组件" aria-hidden="true" class="header-anchor">#</a> 业务组件</h2> <h3 id="数据导入导出"><a href="#数据导入导出" aria-hidden="true" class="header-anchor">#</a> 数据导入导出</h3> <h3 id="数据下载-导出"><a href="#数据下载-导出" aria-hidden="true" class="header-anchor">#</a> 数据下载/导出</h3> <h3 id="操作权限应用"><a href="#操作权限应用" aria-hidden="true" class="header-anchor">#</a> 操作权限应用</h3> <p>适配根据对用户或角色配置的权限项目(例:增加、删除、导出等)进行应用的操作元素(例:按钮、链接等),并自动根据配置内容决定该元素是否出现于当前界面</p> <h3 id="选择器-2"><a href="#选择器-2" aria-hidden="true" class="header-anchor">#</a> 选择器</h3> <p>用于挑选数据的选择器</p> <ul><li>存货选择器</li></ul> <p><img src="/frontend/plugins/product.png" alt="product"></p></div> <footer class="page-edit"><!----> <!----></footer> <!----> </main></div><div class="global-ui"></div></div>
    <script src="/assets/js/app.a6d4693a.js" defer></script><script src="/assets/js/2.0f93069c.js" defer></script><script src="/assets/js/12.6e019225.js" defer></script>
  </body>
</html>