Gestionnaire JSON
Gérer des jeux de données et applique des correctifs JSON.
Appliquer des correctifs
Il y a un nombre inconnu de produits à un tarif unitaire de (N/D).
Mon premier produit est (inconnu) et le produit original était (inconnu).
Correctif pour un tableau d'objets:
Code source
HTML
<div data-wb-jsonmanager='{
"url": "demo/data-fr.json",
"name": "exemple1",
"patches": [
{ "op": "wb-count", "path": "/produits", "set": "/nbproduit" },
{ "op": "copy", "from": "/produits/0", "path": "/produit"},
{ "op": "wb-nbtolocal", "path": "/prix", "suffix": "$" }
]
}'></div>
<p>Il y a <span data-json-replace="#[exemple1]/nbproduit">un nombre inconnu de</span> produits à un tarif unitaire de <span data-json-replace="#[exemple1]/prix">(N/D)</span>.</p>
<p>Mon premier produit est <span data-json-replace="#[exemple1]/produit">(inconnu)</span> et le produit original était <span data-json-replace="demo/data-fr.json#/produit">(inconnu)</span>.</p>
<div data-wb-jsonmanager='{
"url": "demo/data-fr.json#/niveau1/niveau2",
"name": "exemple2",
"patches": [
{ "op": "wb-toDateISO", "path": "/itm1" }
]
}'>
<p>Correctif pour un tableau d'objets:</p>
<ul data-wb-json='{
"url": "#[exemple2]",
"mapping": [
{ "selector": "li", "value": "/itm1" }
]
}'>
<template>
<li></li>
</template>
</ul>
</div>
Fichier demo/data-fr.json
{
"produit": "Bonjour le monde",
"produits": [
"Mon nouveau produit",
"Mon deuxième produit",
"Mon produit numéro 3",
"Mon produit numéro 4"
],
"niveau1": {
"niveau2": [
{
"itm1": "2016-11-30T07:53:56Z"
},
{
"itm1": "2017-02-01T16:52:00Z"
},
{
"itm1": "2013-09-08T14:14:14Z"
}
]
},
"prix": 1234.98
}
Afficher des résultats à partir d'un JSON RESTful API
Code source
Consult the JSON RESTful API github result: https://api.github.com/repos/wet-boew/wet-boew/issues?labels=Work%3A+Accessibility
<h3>Requête relié à l'accessibilité <small>WET-BOEW sur GitHub</small></h3>
<div class="row">
<aside id="aside" class="col-md-8 col-md-push-2 well" data-wb-jsonmanager='{
"url": "https://api.github.com/repos/wet-boew/wet-boew/issues?labels=Work%3A+Accessibility",
"name": "github",
"patches": [
{ "op": "wb-count", "path": "/rootArray", "set": "/nbissues" },
{ "op": "wb-last", "path": "/rootArray", "set": "/last" },
{ "op": "wb-first", "path": "/rootArray", "set": "/first" },
{ "op": "wb-toDateISO", "path": "/last/created_at", "set": "/oldest" },
{ "op": "wb-toDateISO", "path": "/first/created_at", "set": "/recent" },
{ "op": "add", "path": "/unhideme", "value": "hidden" }
],
"wraproot": "rootArray"
}'>
<h4 class="mrgn-tp-sm">Vue d'ensemble</h4>
<ul class="list-unstyled">
<li>Nombre de problèmes: <span data-json-replace="#[github]/nbissues"></span></li>
<li>Le plus récent: <a lang="en" class="hidden" data-wb-json='[
{
"url": "#[github]/first/title",
"type": "replace"
},
{
"url": "#[github]/first/html_url",
"type": "attr",
"attr": "href"
},
{
"url": "#[github]/unhideme",
"type": "removeclass"
}
]'></a> (<span data-json-replace="#[github]/recent">inconnu</span>)</li>
<li>Le plus ancien: <a lang="en" class="hidden" data-wb-json='[
{
"url": "#[github]/last/title",
"type": "replace"
},
{
"url": "#[github]/last/html_url",
"type": "attr",
"attr": "href"
},
{
"url": "#[github]/unhideme",
"type": "removeclass"
}
]'></a> (<span data-json-replace="#[github]/oldest">inconnu</span>)</li>
</ul>
<p><a href="https://github.com/wet-boew/wet-boew/issues?q=is%3Aopen+is%3Aissue+label%3A%22Work%3A+Accessibility%22" hreflang="en">Consulter les problèms sur GitHub</a></p>
</aside>
</div>
<p>Liste des problèmes:</p>
<div data-wb-jsonmanager='{
"url": "https://api.github.com/repos/wet-boew/wet-boew/issues?labels=Work%3A+Accessibility",
"name": "github-src",
"patches": [
{ "op": "wb-toDateISO", "path": "/updated_at" }
]
}'></div>
<ul lang="en" data-wb-json='{
"url": "#[github-src]",
"mapping": [
{ "selector": "a", "value": "/title" },
{ "selector": "a", "value": "/html_url", "attr": "href" },
{ "selector": "span", "value": "/updated_at" }
]
}'>
<template>
<li>(<span></span>) <a href=""></a></li>
</template>
</ul>
Requête relié à l'accessibilité WET-BOEW sur GitHub
Liste des problèmes:
Opération de correctifs JSON
Les opération de correctifs JSON sont définie par RFC6002 - JavaScript Object Notation (JSON) Patch avec quelques ajout d'opération afin de combler les besoins du gestionnaire JSON. Détaillé dans la documentations, les opérations suivant sont supporté par défaut: add
, remove
, replace
, move
, copy
, test
, wb-count
, wb-first
, wb-last
, wb-toDateISO
and wb-toDateTimeISO
.
Débogage
Vous pouvez utiliser le paramètre de configuration "debug": true
afin d'afficher après le gestionnaire json l'objet json modifier ainsi que la liste des correctifs appliqué. Le contenu JSON est affiché sans mise en forme.
Nombre de produits: Non disponible
Code source
<p data-wb-jsonmanager='{
"url": "demo/data-fr.json",
"name": "exemple3",
"patches": { "op": "wb-count", "path": "/produits", "set": "/nbproduit" },
"debug": true
}'>Nombre de produits: <span data-json-replace="#[exemple3]/nbproduit">Non disponible</span></p>
Détails de la page
- Date de modification :