BT

Diffuser les Connaissances et l'Innovation dans le Développement Logiciel d'Entreprise

Contribuez

Sujets

Sélectionner votre région

Accueil InfoQ Actualités Un grand pas en avant pour RiotJS avec la Version 2.3

Un grand pas en avant pour RiotJS avec la Version 2.3

L'équipe principale de Riot.js a publié la version 2.3, la décrivant comme "un grand pas en avant" pour la micro-bibliothèque similaire à React.

Comme son nom l'indique, l'objet de Riot (émeute - NdT) est de boulverser l'espace des outils de front. Adressant les "vrais points faibles" que les créateurs perçoivent sur React, riot.min.js pèse 18.3KB, comparé aux 119KB de react.min.js, et vient avec des tags et une syntaxe spécifique.

La version 2.3 fixe la base de codes autour de six modules : compiler, tmpl, observable, route, core et cli. Echangeant avec InfoQ, Gianluca Guarini - un des développeurs principaux de Riot - explique que c'est pour lui l'une des plus fortes améliorations de Riot, car "si vous voulez juste utiliser une partie du framework comme les riot-route ou le riot-observable, vous pouvez le faire".

La 2.3 ajoute aussi le HTML5 history router. A partir de la 2.3, Riot "exécutera les callback demandés au changement d'URL et en cas de correspondance avec un filter."

Par exemple :

// matches to just `/fruit`
riot.route('/fruit', function(name) {
  console.log('The list of fruits')
})

Les caractères génériques(*) sont autorisés dans les filter et permettent d'attraper les arguments :

// if the url change to `/fruit/apple`,
// this will match and catch 'apple' as `name`
riot.route('/fruit/*', function(name) {
  console.log('The detail of ' + name)
})

// if the url change to `/blog/2015-09/01`,
// this will match and catch '2015', '09' and '01'
riot.route('/blog/*-*/*', function(year, month, date) {
  console.log('The page of ' + year + '-' + month + '-' date)
})

Riot 2.3 a également une mise à jour des comportements de boucle, pour améliorer à la fois la vitesse et la fiabilité. Les noeuds du DOM sont maintenant déplacés, ajoutés ou supprimés de manière synchrone avec les collections de données, et si l'équipe de Riot explique que cela peut ralentir le rendu, les développeurs peuvent ajouter un no-reorder sur les boucles de noeuds pour accélerer les traitements.

Dans la prochaine version, l'équipe vise à résoudre les difficultés remontées par la communauté sur la 2.3. Guarini explique en particulier à InfoQ qu'il aimerait changer le build en utilisant rollup. De nouveaux parseurs dans le compilateur, comme sass, sont aussi prévus, ce qui permettrait de n'exporter que les CSS, HTML ou JavaScript des tags Riot.

Riot est gratuit, open source et sous Licence MIT. Guarini explique que Riot accepte les contributions du monde entier sans aucun lobbying de grandes entreprises sur les bibliothèques, contrairement à d'autres. A la place, dit-il, Riot est développé par des passionnés, passant une part de leur temps libre à construire un outil que tout le monde peut utiliser.

Riot existe grâce à plusieurs contributeurs actifs partout dans le monde. Les lecteurs d'InfoQ intéressés pour contribuer peuvent lire le contributing.md et envoyer leurs patchs sur l'un des repos.

Evaluer cet article

Pertinence
Style

Contenu Éducatif

BT