Skip to content

Commit 79816bf

Browse files
committed
🚨 Removing linter warnings.
1 parent e1db043 commit 79816bf

18 files changed

Lines changed: 429 additions & 123 deletions

gulpfile.js

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,9 @@ const mix = new (require('./workflow/Mix.js'))();
2222
const basicTaskPath = 'workflow/basicTasks';
2323
const combinedTaskPath = 'workflow';
2424

25-
const basicTaskPathFilterCallback = file => {
26-
return file.match(/js$/); // 排除非 JS 文件,如 Vim 临时文件
27-
};
25+
const basicTaskPathFilterCallback = (file) => file.match(/js$/); // 排除非 JS 文件,如 Vim 临时文件
2826

29-
fs.readdirSync(basicTaskPath).filter(basicTaskPathFilterCallback).sort().forEach(file => {
27+
fs.readdirSync(basicTaskPath).filter(basicTaskPathFilterCallback).sort().forEach((file) => {
3028
require('./' + basicTaskPath + '/' + file)(gulp, mix);
3129
});
3230

@@ -37,12 +35,12 @@ require('./' + combinedTaskPath + '/watch')(gulp, mix);
3735

3836
// 载入自定义任务
3937
if (mix.config.customTasks) {
40-
Object.keys(mix.config.customTasks).forEach(customTaskName => {
38+
Object.keys(mix.config.customTasks).forEach((customTaskName) => {
4139
require('./' + mix.config.customTasks[customTaskName])(gulp, mix);
4240
});
4341
}
4442

4543
// 载入 start 和 initProject 任务
46-
['start', 'initProject'].forEach(file => {
44+
['start', 'initProject'].forEach((file) => {
4745
require('./' + combinedTaskPath + '/' + file)(gulp, mix);
4846
});

workflow/Mix.js

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,31 +15,32 @@
1515

1616
// 声明插件以及配置文件的依赖
1717
const plugins = require('gulp-load-plugins')({
18-
rename: {
19-
'gulp-file-include': 'include',
20-
'gulp-merge-link': 'merge',
21-
'gulp-better-sass-inheritance': 'sassInheritance'
22-
}
23-
});
18+
rename: {
19+
'gulp-file-include': 'include',
20+
'gulp-merge-link': 'merge',
21+
'gulp-better-sass-inheritance': 'sassInheritance'
22+
}
23+
});
2424
const packageInfo = require('../package.json');
2525
const browserSync = require('browser-sync').create();
2626
const reload = browserSync.reload;
2727
const colors = require('ansi-colors');
2828
const defaultsDeep = require('lodash/defaultsDeep');
29+
const util = new (require('./Util'))();
2930

3031
let configDefault;
3132
let configUser = {};
3233

3334
// 读取项目配置表
3435
try {
3536
configDefault = require('../../qmui.config.js');
36-
} catch (event) {
37-
log(colors.red('QMUI Config: ') + '找不到项目配置表,请按照 http://qmuiteam.com/web/index.html 的说明进行项目配置');
37+
} catch (error) {
38+
util.log(colors.red('QMUI Config: ') + '找不到项目配置表,请按照 http://qmuiteam.com/web/index.html 的说明进行项目配置');
3839
}
3940

4041
try {
4142
configUser = require('../../qmui.config.user.js');
42-
} catch (event) {
43+
} catch (error) {
4344
// 没有个人用户配置,无需额外处理
4445
}
4546

@@ -53,13 +54,17 @@ class Mix {
5354
this.reload = reload;
5455

5556
this.timeFormat = new (require('./TimeFormat'))();
56-
this.util = new (require('./Util'))();
57+
this.util = util;
5758

5859
this.tasks = {};
5960
}
6061

6162
/**
6263
* 增加任务说明的接口。
64+
* @param {String} name QMUI 工作流中任务的名字。
65+
* @param {String} description 任务的简短介绍。
66+
* @param {Object} options 任务的参数。
67+
* @returns {undefined}
6368
*/
6469
addTaskDescription(name, description, options) {
6570
this.tasks[name] = {
@@ -70,13 +75,16 @@ class Mix {
7075

7176
/**
7277
* 获取所有任务。
78+
* @returns {Array} 返回 QMUI 工作流中所有任务。
7379
*/
7480
getAllTask() {
7581
return this.tasks;
7682
}
7783

7884
/**
7985
* 获取单个任务的信息。
86+
* @param {String} name 需要获取的 QMUI 工作流任务的名字。
87+
* @returns {Object} 返回 QMUI 工作流中某个指定的任务。
8088
*/
8189
getTask(name) {
8290
return this.tasks[name];

workflow/TimeFormat.js

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@ const padStart = require('lodash/padStart');
1616

1717
// 工具方法
1818
class TimeFormat {
19-
constructor() {
20-
}
21-
2219
checkDateFormat(date) {
2320
return padStart(date.toString(), 2, '0');
2421
}

workflow/basicTasks/clean.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ module.exports = (gulp, mix) => {
2020

2121
const taskName = 'clean';
2222

23-
gulp.task(taskName, done => {
23+
gulp.task(taskName, (done) => {
2424
// force: true 即允许 del 控制本目录以外的文件
2525
del(mix.config.cleanFileType, {force: true});
2626
mix.util.log('Clean', `清理所有的 ${mix.config.cleanFileType.join(', ')} 文件`);

workflow/basicTasks/include.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,16 +20,16 @@ module.exports = (gulp, mix) => {
2020

2121
const taskName = 'include';
2222

23-
gulp.task(taskName, done => {
23+
gulp.task(taskName, (done) => {
2424

25-
const _condition = file => {
25+
const _condition = (file) => {
2626
const fileName = path.basename(file.path);
2727
return !fileName.match(/^_/);
2828
};
2929

3030
gulp.src(mix.config.paths.htmlSourcePath)
3131
.pipe(mix.plugins.plumber({
32-
errorHandler: error => {
32+
errorHandler: (error) => {
3333
mix.util.error('Include', error);
3434
mix.util.beep();
3535
}

workflow/basicTasks/list.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ module.exports = (gulp, mix) => {
2020

2121
const taskName = 'list';
2222

23-
gulp.task(taskName, done => {
23+
gulp.task(taskName, (done) => {
2424
const marginData = calculateMargin(mix.tasks);
2525
const margin = marginData.margin;
2626
const optionsBuffer = marginData.hasOptions ? ' --' : '';
@@ -31,7 +31,7 @@ module.exports = (gulp, mix) => {
3131
console.log('');
3232
console.log('Available tasks');
3333

34-
Object.keys(mix.getAllTask()).forEach(name => {
34+
Object.keys(mix.getAllTask()).forEach((name) => {
3535

3636
const help = mix.getTask(name);
3737

@@ -45,7 +45,7 @@ module.exports = (gulp, mix) => {
4545

4646
if (help.options) {
4747
const options = Object.keys(help.options);
48-
options.forEach(option => {
48+
options.forEach((option) => {
4949
const optText = help.options[option];
5050
args.push('\n ' + optionsBuffer + mix.util.colors.cyan(option) + ' ');
5151

workflow/basicTasks/merge.js

Lines changed: 28 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -23,40 +23,36 @@ module.exports = (gulp, mix) => {
2323

2424
const taskName = 'merge';
2525

26-
const mergeReference = rules => {
26+
const mergeReference = (rules) => {
2727
// 基于 https://github.com/aDaiCode/gulp-merge-link
2828
rules = rules || [];
2929

3030
const linkRegex = /<link(?:\s+|\s+.+\s+)href\s*=\s*["']?(.+\.css).*?>/g;
3131
const scriptRegex = /<script(?:\s+|\s+.+\s+)src\s*=\s*["']?(.+\.js).*?script\s*>/g;
3232

33-
const linkTemplate = href => {
34-
return '<link rel="stylesheet" href="' + href + '"/>';
35-
};
36-
const scriptTemplate = src => {
37-
return '<script type="text/javascript" src="' + src + '"></script>';
38-
};
33+
const linkTemplate = (href) => '<link rel="stylesheet" href="' + href + '"/>';
34+
const scriptTemplate = (src) => '<script type="text/javascript" src="' + src + '"></script>';
3935

4036
const getReference = (reg, contents) => {
41-
let result,
42-
references = [];
43-
// noinspection JSAssignmentUsedAsCondition
37+
let result;
38+
const references = [];
39+
/* eslint-disable no-cond-assign */
4440
while (result = reg.exec(contents)) {
4541
references.push({
4642
match: result[0],
4743
url: result[1].trim().replace(/^\.\//, '')
4844
});
4945
}
46+
/* eslint-enable no-cond-assign */
5047
return references;
5148
};
5249

53-
const getTemplate = url => {
54-
const isScript = /\.js$/.test(url);
50+
const getTemplate = (url) => {
51+
const isScript = (/\.js$/).test(url);
5552
if (isScript) {
5653
return scriptTemplate(url);
57-
} else {
58-
return linkTemplate(url);
5954
}
55+
return linkTemplate(url);
6056
};
6157

6258
return through.obj((file, encoding, callback) => {
@@ -65,25 +61,25 @@ module.exports = (gulp, mix) => {
6561
}
6662

6763
let contents = String(file.contents);
68-
let references = [],
69-
replaceList = [],
70-
flag = {};
64+
let references = [];
65+
const replaceList = [];
66+
const flag = {};
7167

7268
// 获取所有引用
7369
references = references.concat(getReference(linkRegex, contents)).concat(getReference(scriptRegex, contents));
7470

7571
// 循环所有引用,检测是否需要进行处理
76-
for (let key in references) {
77-
let reference = references[key];
72+
for (const key in references) {
73+
const reference = references[key];
7874

79-
for (let targetUrl in rules) {
75+
for (const targetUrl in rules) {
8076
// 把引用与传入的合并规则进行对比,把命中规则的引用进行合并处理
8177
if (!rules.hasOwnProperty(targetUrl)) {
8278
break;
8379
}
84-
let sourceUrls = rules[targetUrl];
80+
const sourceUrls = rules[targetUrl];
8581

86-
const sourceUrlFound = sourceUrls.find(sourceUrl => {
82+
const sourceUrlFound = sourceUrls.find((sourceUrl) => {
8783
sourceUrl = sourceUrl.trim().replace(/^\.\//, '');
8884

8985
return minimatch(reference.url, sourceUrl);
@@ -105,7 +101,7 @@ module.exports = (gulp, mix) => {
105101
mix.util.log('Merge', file.path);
106102
}
107103

108-
replaceList.map(replace => {
104+
replaceList.forEach((replace) => {
109105
contents = contents.replace(replace.match, replace.replace);
110106
});
111107

@@ -115,23 +111,23 @@ module.exports = (gulp, mix) => {
115111
});
116112
};
117113

118-
gulp.task(taskName, done => {
114+
gulp.task(taskName, (done) => {
119115
// 读取合并规则并保存起来
120116
let mergeRule;
121117
try {
122118
mergeRule = require('../../../qmui.merge.rule.js');
123-
} catch (event) {
119+
} catch (error) {
124120
mix.util.error('Merge', '没有找到合并规则文件,请按照 http://qmuiteam.com/web/scaffold.html#qui_scaffoldMerge 的说明进行合并规则配置');
125121
}
126122

127-
const replaceProjectParentDirectory = source => {
123+
const replaceProjectParentDirectory = (source) => {
128124
// 转换为以项目根目录为开头的路径形式
129125
const projectParentDirectory = path.resolve('../../..');
130-
return source.replace(projectParentDirectory, '').replace(/^[\\\/]/, '');
126+
return source.replace(projectParentDirectory, '').replace(/^[\\/]/, '');
131127
};
132128

133129
// 合并文件
134-
for (let sourceFile in mergeRule) {
130+
for (const sourceFile in mergeRule) {
135131
// 后面变更文件时,需要的是每个文件在 HTML 中书写的路径,即相对模板文件的路径
136132
// 但对合并文件,即 concat 来说,需要的是文件相对 qmui_web 目录的路径,因此需要对合并的结果以及来源文件手工加上一个 '../'
137133

@@ -140,8 +136,8 @@ module.exports = (gulp, mix) => {
140136
const resultFilePath = path.dirname(resultFile);
141137
const value = mergeRule[sourceFile]; // 来源文件原始路径获取
142138

143-
let childFiles = [],
144-
childFilesString = ''; // 用于在 Log 中显示
139+
const childFiles = [];
140+
let childFilesString = ''; // 用于在 Log 中显示
145141

146142
// 遍历来源文件并给每个文件加上 '../'
147143
for (let index = 0; index < value.length; index++) {
@@ -156,13 +152,11 @@ module.exports = (gulp, mix) => {
156152
}
157153
}
158154

159-
const condition = file => {
160-
return file.path.toString().indexOf('.js') !== -1;
161-
};
155+
const condition = (file) => file.path.toString().indexOf('.js') !== -1;
162156

163157
gulp.src(childFiles)
164158
.pipe(mix.plugins.plumber({
165-
errorHandler: error => {
159+
errorHandler: (error) => {
166160
mix.util.error('Merge', error);
167161
mix.util.beep();
168162
}

workflow/basicTasks/proxy.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
// proxy 监视文件改动并重新载入
1717
module.exports = (gulp, mix) => {
1818

19-
gulp.task('proxy', done => {
19+
gulp.task('proxy', (done) => {
2020

2121
const showLog = () => {
2222
if (mix.config.browserSync.browserSyncShowLog) {

workflow/basicTasks/readToolMethod.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,15 @@ const isEqual = require('lodash/isEqual');
1818

1919
// 读取含有工具方法的 Sass 文件列表(Sass 文件需要以 Sassdoc 格式编写注释),并将工具名称集输出为 JS 文件
2020
// 传入 Sass 文件列表,以及待输出的 JS 文件地址
21-
module.exports = gulp => {
21+
module.exports = (gulp) => {
2222

23-
gulp.task('readToolMethod', done => {
23+
gulp.task('readToolMethod', (done) => {
2424

25-
sassdoc.parse('./qmui/mixin').then(data => {
25+
sassdoc.parse('./qmui/mixin').then((data) => {
2626
if (data.length > 0) {
2727
// 按 group 把数组重新整理成二维数组
28-
let result = [],
29-
currentGroup = null,
28+
const result = [];
29+
let currentGroup = null,
3030
currentGroupArray = null;
3131
for (let itemIndex = 0; itemIndex < data.length; itemIndex++) {
3232
const item = data[itemIndex];

workflow/basicTasks/reload.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
// 刷新浏览器
1717
module.exports = (gulp, mix) => {
1818

19-
gulp.task('reload', done => {
19+
gulp.task('reload', (done) => {
2020
mix.reload();
2121
done();
2222
});

0 commit comments

Comments
 (0)