eslint-plugin-raflint
v1.5.9
Published
Ce plugin eslint permet de détecter:
Readme
README
Ce plugin eslint permet de détecter:
no-conditional-object-spread
Les écritures du style :
const obj = {
...(condition ? { prop: 'value' } : {}),
};
const obj = {
...(condition && { prop: 'value' }),
};qui devrait être écrites comme ça:
const condition = true;
const obj = {};
if (condition) obj.prop = value;La règle couvre aussi le spread conditionnel dans un tableau ou un appel, malgré son nom —
ne pas la restreindre au parent ObjectExpression :
const args = [target, ...(Array.isArray(command) ? command : [command])];qui devrait être écrit comme ça:
const argv = Array.isArray(command) ? command : [command];
const args = [target, ...argv];no-path-join
Les utilisations de path.join() avec au moins deux arguments, remplacées par des template strings
(fixable, donc réécrites par eslint --fix) :
const filePath = path.join(directory, filename);qui devrait être écrites comme ça:
const filePath = `${directory}/${filename}`;Un accès calculé (path[join](a, b)) n'est pas signalé du tout : la méthode appelée n'est pas
connue statiquement. Un argument spread (path.join(root, ...parts)) est signalé sans fix : il
n'est pas interpolable.
tester le plugin sur un projet
on peut se mettre dans le dossier ou on veut utiliser le plugin pui lancer :
npm link ../pathDuPlugin on peut ensuite le voir comme ça
npm ls --link puis enlever le link
npm unlink xxx
