UNPKG

4.64 kBMarkdownView Raw
1# @sweet-mobile-sdk 文档
2> 基于webpack@4.10.2 Vue.js@2.5.16的移动端构建sdk
3
4### 目录
5* --- config // 配置文件目录
6 * --- koa2-middle // koa2中间件
7 * --- errorMiddleWare.js // 错误处理
8 * --- fileMiddle.js // 处理请求访问本地文件(开发模式)
9 * --- proxyMiddleWare.js // 处理开发环境代理转发
10 * --- logger
11 * --- koa-logger.js // koa2服务log
12 * --- vue-logger.js // .vue中log
13 * --- utils
14 * --- env.js // 环境变量判断
15 * --- responsiveDesign.js // 响应式js
16 * --- StringUtils.js // 公共方法
17 * --- eslintrc.conf.js // eslint 规则配置
18 * --- koa-dev-server.js // koa2 开发服务配置
19 * --- manifest.js // h5离线缓存文件生成脚本
20 * --- vue-loader.conf.js // vue loader 配置
21 * --- webpack.config.base.js // webpack 基础配置
22 * --- webpack.config.dev.js // webpack 开发配置
23 * --- webpack.config.dll.js // webpack dll配置 单独打包第三方库
24 * --- webpack.config.prod.js // webpack生产配置
25* --- .gitignore
26* --- index.js // 入口文件
27* --- package.json
28* --- README.md
29
30
31### webpack配置
32
33* webpack.config.base.js
34* webpack.config.dev.js
35* webpack.config.dll.js
36* webpack.config.prod.js
37
38### koa2
39
40暂时只作为开发服务
41
42### eslint规则
43```js
44/**
45 * eslint规则配置,用于被业务工程引用
46 * Created by liuzhengdong on 2018/4/3.
47 */
48module.exports = {
49 root: true,
50 env: {
51 // 环境定义了预定义的全局变量。
52 browser: true,
53 node: true,
54 es6: true,
55 mocha: true
56 },
57 parser: 'babel-eslint', //使用babel-eslint来作为eslint的解析器
58 parserOptions: {
59 // ECMAScript 版本
60 ecmaVersion: 6,
61 sourceType: 'module',
62 // // 想使用的额外的语言特性:
63 ecmaFeatures: {
64 experimentalObjectRestSpread: true,
65 }
66 },
67 extends: 'standard',
68 plugins: [
69 'html',
70 'import',
71 'promise',
72 ],
73 // add your custom rules here
74 rules: {
75 // 禁止条件表达式中出现赋值操作符
76 'no-cond-assign': 2,
77 // 允许console语句
78 'no-console': 1,
79 // 允许 debugger
80 'no-debugger': 0,
81 // 禁止 function 定义中出现重名参数
82 'no-dupe-args': 2,
83 // var声明
84 'no-var': 1,
85 // 分号;
86 'semi': [
87 0,
88 'always'
89 ],
90 // 使用 === 替代 == allow-null允许null和undefined==
91 'eqeqeq': [
92 2,
93 'allow-null'
94 ],
95 // 禁用 alert、confirm 和 prompt
96 'no-alert': 2,
97 // 禁用 eval()
98 'no-eval': 2,
99 // 禁用 with 语句
100 'no-with': 2,
101 // 要求或禁止使用严格模式指令
102 'strict': 2,
103 //////////////
104 // 要求或禁止 var 声明中的初始化(初值)
105 'init-declarations': 2,
106 // 不允许 catch 子句的参数与外层作用域中的变量同名
107 'no-catch-shadow': 0,
108 // 禁止删除变量
109 'no-delete-var': 2,
110 // 不允许标签与变量同名
111 'no-label-var': 2,
112 // 禁用特定的全局变量
113 'no-restricted-globals': 0,
114 // 禁止 var 声明 与外层作用域的变量同名
115 'no-shadow': 0,
116 // 禁止覆盖受限制的标识符
117 'no-shadow-restricted-names': 2,
118 // 禁用未声明的变量,除非它们在 /*global */ 注释中被提到
119 'no-undef': 2,
120 // 禁止将变量初始化为 undefined
121 'no-undef-init': 2,
122 // 禁止将 undefined 作为标识符
123 'no-undefined': 0,
124 // 禁止出现未使用过的变量
125 'no-unused-vars': [
126 0,
127 {
128 'vars': 'all',
129 'args': 'none'
130 }
131 ],
132 // 不允许在变量定义之前使用它们
133 'no-use-before-define': 0,
134 // 强制一行的最大长度
135 'max-len': [
136 1,
137 200
138 ],
139 // 文件末尾强制换行
140 'eol-last': 0,
141 // 强制使用一致的反勾号、双引号或单引号
142 'quotes': [
143 2,
144 'single'
145 ],
146 // 禁止修改 const 声明的变量
147 'no-const-assign': 2,
148 // 禁止标识符中有悬空下划线_bar
149 'no-underscore-dangle': 0,
150 // 禁用行尾空格
151 'no-trailing-spaces': 2,
152 // 禁用不必要的嵌套块
153 'no-lone-blocks': 2,
154 // 强制在 JSX 属性中一致地使用双引号或单引号
155 'jsx-quotes': 0,
156 // 函数定义时括号前面要不要有空格 这里忽略
157 'space-before-function-paren': [0, `always`],
158 //对象字面量项尾不能有逗号 这里忽略
159 'comma-dangle': [0, 'always'],
160 },
161}
162```