05 novembre 2018
Première actu depuis la dernière édition : la sortie le 23 octobre de la version 16.6 de React.
Parmi les ajouts de cette nouvelle version mineure,
React.memo
qui est un HOC permettant de faire un PureComponent à
partir d’un functional component (alors que jusqu’ici la seule
solution était d’utiliser une classe étendant React.PureComponent
).
On trouve aussi Suspense
et lazy
qui permettent de contrôler
finement le découpage et le chargement dynamique du code, et la
déclaration statique de contextType
facilitant la consommation de
Context avec les class components.
Alors que React 16.6 vient tout juste de sortir, une pre-release de la version 16.7 nous a présenté les Hooks.
The Platform est un bibliothèque de composants utilisant ces hooks pour rentre facilement accessibles certaines API Web, aux applications React.
À l’occasion d’Halloween, l’article Navigating the Spooky World of JavaScript explore certains risques liés au développement JavaScript et propose plusieurs conseils sur les erreurs à éviter.
Sophie Alpert, manager React chez Facebook propose
une astuce : une fonction de log()
qui permet de visualiser la
profondeur de la pile d’appel.
function log (format, ...args) {
let indent = ' '.repeat(new Error().stack.match(/\n/g).length - 2);
if (typeof format === 'string') {
console.log(indent + format, ...args);
} else {
console.log(indent, format, ...args);
}
}
On ne présente plus xkcd, la bande dessinée en ligne de Randall Munroe.
Voici l’une de ses publications proposant un arbre de décision. Il permet de retrouver à partir de différents détails, l’age d’une carte qu’on a sous les yeux.
Il y a sur le wiki du CSS Working Group une liste (incomplète) des erreurs de conception du CSS.
Elle représente un mea culpa du W3C sur de nombreux détails curieux, d’absurdités, d’incohérence dont certains mots clés, certaines règles, certains comportements ont été définis dans les spécifications du CSS. Morceaux choisis :
box-sizing
aurait dû avoir la valeur border-box
par défaut.border-radius
aurait dû se nommer corner-radius
.text-overflow
devrait s’appliquer indépendamment de la propriété overflow
.Un oubli lors d’un commit, une branche mal nommée… Gitlab propose sur son blog un petit article présentant 6 erreurs communes avec Git et les commandes pour s’en sortir.
Github a récemment ajouté à son interface de notification, un moyen de mettre de côté certaines notifications. Ainsi rangées dans un dossier Saved for later, on peut sans souci marquer
Petit rappel fait par Brian Goff sur Twitter :
.gitignore for a repo should contain things that are produced by build scripts in the repo that you don’t want to commit.
Everything else, e.g. IDE generated files, macOS .DS_STORE files, etc, should go in your own global gitignore.