前端开发规范

1.开发规范

  1. 编码规范英文版地址
  2. 遵循vue风格指南
  3. 完全了解业务的前提下再进行开发
  4. 开发前编写开发文档,开发中严格遵循开发文档要求
  5. 统一采用Eslint规范代码风格
  6. 将面向对象思想、设计模式贯穿到开发中
  7. 常用组件要进行封装

1.1插件使用规范

  1. 不要引入不必要的插件
  2. 确实需要引入时,考虑按需引入
  3. 尽量不要使用JQuery等需要操作DOM来在更新状态的插件
  4. 使用vuex状态管理时需要考虑必要性:不要为了使用vuex而使用vuex
  5. 尽量不要自己造轮子

1.2.组件使用规范

字体

统一使用微软雅黑

Icon

优先使用字体图标,(不能满足需求时,采用切图)

image
  1. 考虑是否需要增加onerror状态下的显示状态
  2. 考虑适配问题
颜色

考虑是否需要在选中,激活状态下增加区分效果

Button
  1. 有查询等网络请求操作时,使用disabled属性,避免重复点击
  2. 根据用户习惯,弹窗footer中“确定”按钮在“取消”左侧
  3. 考虑是否需要增加必要的图标,使按钮更形象
Input输入框
  1. 类型限制,(数字类型(只允许输入数字)、金额类型(小数位控制))
  2. 长度限制
  3. 是否需要 clearable
  4. 是否需要自动获取焦点(包含其他操作结束后,焦点会自动回到输入框)
  5. 是否需要选中并覆盖输入框中的值
  6. 是否需要表单验证、正则验证
  7. 多个输入框,是否需要支持,通过键盘操作焦点上下左右切换
  8. 是否需要支持键盘操作,比如:Enter键,作为确认操作
  9. 绑定model是否需要增加修饰符(trim、number)限制
    ★★★★★ 除了登录时候需要记住密码,其他情况禁止出现保存密码或者更新密码弹窗,非密码类型输入框禁止被自动填充。
Select 选择器
  1. 只有一个候选项时,直接展示到选项中
  2. 考虑是否需要支持clearable
  3. 有查询等网络请求操作时,使用disabled属性,禁止操作
Table表格
  1. 数字类(数量、比例)、金额类的,均居右展示
  2. 表格中文字较长的,hover时提示文字显示全
选择器 (时间、日期选择器)
  1. 考虑是否需要禁止输入
  2. 考虑是否需要clearable
Dialog
  1. 增加宽度高度限制,支持不同分别率
  2. 考虑是否会影响父布局
  3. 考虑什么时候进行关闭(点遮罩层、键盘ESC)
  4. 异常状态下,弹窗是否会自动关闭
提示
  1. 给与必要的提示
  2. 提示的正确性、严谨性(不要有错别字,要易于理解)
  3. 尊重用户习惯,比如:弹窗footer左侧确定、右侧取消(关闭)
tab

关闭页签时候,是否需要提示(增强严谨性)

NavMenu 导航菜单
Carousel 走马灯
  1. 考虑只有一个轮播页面时候的展示形式
  2. 考虑轮播上的事件与轮播是否对应
Backtop 回到顶部

根据实际情况,考虑是否需要回到顶部或指定位置

Affix

根据实际情况,确定是否需要吸附效果,并且考虑兼容性问题


2.项目打包配置


3.常见问题

3.1 页面缓存问题

根据实际项目需要,确定是否需要缓存页面数据。对于多页签页面,一般需要缓存每个页面的数据。

3.2 vue项目缓存问题

1.index.html中禁止缓存

    <meta   http-equiv="Expires"   CONTENT="0">
    <meta   http-equiv="Cache-Control"   CONTENT="no-cache">
    <meta   http-equiv="Pragma"   CONTENT="no-cache">

2.引入的静态js后加时间戳

 <script src="/static/api.js?v=<%= new Date().getTime() %>"></script>

3.提示用户,版本更新,自己退出重新登录(没有办法的办法),进行刷新。获取最新项目

this.$router.replace({path: `/login?v=${new Date().getTime()}`})
location.replace(location.href)

4.nginx中进行配置

expires -1s;
add_header Cache-Control no-cache;
add_header Cache-Control private;

3.3 其他问题

  • 浏览器兼容问题,对应支持es语法的浏览器,需要特别关注IE11样式、功能是否有异常

4.其他

4.1插件推荐

4.2源码学习

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容

  • Web网站测试流程和方法(转载) 1测试流程与方法 1.1测试流程 进行正式测试之前,应先确定如何开展测试,不可盲...
    夏了夏夏夏天阅读 1,271评论 0 0
  • 1、输入框类型:包括信息输入框、注册、登录输入框、搜索输入框、原创输入框、对话输入框以及其它; 2、文本输入框使用...
    二O一七阅读 1,322评论 1 14
  • 不知不觉,岁寒输入法的更新历史已经可以列出这么一长串来了。从中可以看出,岁寒的发展过程也是一个不断试错的过程,其中...
    临岁之寒阅读 33,876评论 1 6
  • 输入框的类型包括信息输入框、注册、登录输入框、搜索输入框、原创输入框、对话输入框等。文本输入框使用场景多,交互频次...
    北岭有狐阅读 1,349评论 0 2
  • Text fields(输入框/文本框)是一个历史悠久而经典的控件,当光标位于输入框时,用户可以在其中输入或复制粘...
    龙爪槐守望者阅读 4,023评论 3 22