Mise à jour du script de la page de démo, avec prise en compte nouvelles classes.

This commit is contained in:
Fabrice PENHOËT 2021-09-21 17:48:26 +02:00
parent 3cb0e0921f
commit 4c033616d3
1 changed files with 50 additions and 22 deletions

View File

@ -1,13 +1,10 @@
import { freeDatas2HTML } from "./freeDatas2HTML";
import { FreeDatas2HTML, Pagination, Selector, SortingField } from "./freeDatas2HTML";
const initialise = async () =>
{
try
{
let converter=new freeDatas2HTML();
converter.datasViewElt={ id:"datas" };
converter.datasSelectors=[{ datasFieldNb:3, id:"filtre1"}, { datasFieldNb:4, id:"filtre2"},{ datasFieldNb:5, id:"filtre3", separator:"," }];
// Fonction spécifique de classement utile pour les données du 4ième champs
const mySort = (a: any, b: any, order: "asc"|"desc" = "asc") =>
{
const values = [ "> 100000", "> 1 et < 100 000", "≤ 1", "Traces", "Inexistant"];
@ -20,25 +17,56 @@ const initialise = async () =>
else
return 0;
};
converter.datasSortingColumns=[{ datasFieldNb:0 }, { datasFieldNb:1 },{ datasFieldNb:2 }, { datasFieldNb:4 }];
converter.datasSortingFunctions= [{ datasFieldNb:4, sort:mySort}];
converter.pagination=
{
selectedValue:10,
options:
{
displayElement : { id:"paginationOptions" },
values: [10,20,50,500],
name: "Choix de pagination :"
},
pages:
{
displayElement : { id:"pages" },
name: "Page à afficher :"
}
}
// Création d'un convertisseur parsant les données d'un fichier CSV "distant"
let converter=new FreeDatas2HTML();
converter.datasViewElt={ id:"datas" };
converter.datasSourceUrl="http://localhost:8080/datas/elements-chimiques.csv";
await converter.parse();
converter.datasSortingFunctions=[{ datasFieldNb: 4, sort:mySort }];
// Configuration de la pagination
const pagination=new Pagination(converter, { id:"pages" }, "Page à afficher :");
pagination.options={ displayElement: { id:"paginationOptions" }, values: [10,20,50,500] , name: "Choix de pagination :" };
pagination.selectedValue=10; // revoir car n'est pas testé si déclaré avant les options
converter.pagination=pagination;
pagination.rend2HTML();
// Affichage initial
await converter.run();
// Création d'outils permettant de filtrer les données des champs de données
let filtre1=new Selector(converter);
filtre1.datasViewElt={ id:"filtre1"};
filtre1.datasFieldNb=3;
filtre1.selector2HTML();
let filtre2=new Selector(converter);
filtre2.datasViewElt={ id:"filtre2"};
filtre2.datasFieldNb=4;
filtre2.selector2HTML();
let filtre3=new Selector(converter);
filtre3.datasViewElt={ id:"filtre3"};
filtre3.datasFieldNb=5;
filtre3.separator=",";
filtre3.selector2HTML();
// Injection des filtres dans le convertisseur
converter.datasSelectors=[filtre1,filtre2,filtre3];
// Ajout de champs permettant de classer les données
let sortingField1=new SortingField(converter);
sortingField1.datasFieldNb=0;
sortingField1.field2HTML();
let sortingField2=new SortingField(converter);
sortingField2.datasFieldNb=1;
sortingField2.field2HTML();
let sortingField3=new SortingField(converter);
sortingField3.datasFieldNb=2;
sortingField3.field2HTML();
let sortingField4=new SortingField(converter);
sortingField4.datasFieldNb=4;
sortingField4.field2HTML();
// Injection dans le convertisseur
converter.datasSortingFields=[sortingField1,sortingField2,sortingField3,sortingField4];
}
catch(e)
{