Pour l'export csv, on utilise Papaparse, c'est plus robuste qu'a la mano
This commit is contained in:
parent
283f5730dc
commit
decadb5f1e
5 changed files with 1955 additions and 8 deletions
|
@ -14,8 +14,10 @@
|
||||||
|
|
||||||
[(#CONFIG{gamutable/version_js}|=={dev}|?{
|
[(#CONFIG{gamutable/version_js}|=={dev}|?{
|
||||||
<script src="[(#CHEMIN{js/vue.js}|timestamp)]" type="text/javascript"></script>
|
<script src="[(#CHEMIN{js/vue.js}|timestamp)]" type="text/javascript"></script>
|
||||||
|
<script src="[(#CHEMIN{js/papaparse.js}|timestamp)]" type="text/javascript"></script>
|
||||||
<script src="[(#CHEMIN{js/gamutable.js}|timestamp)]" type="text/javascript"></script>
|
<script src="[(#CHEMIN{js/gamutable.js}|timestamp)]" type="text/javascript"></script>
|
||||||
,
|
,
|
||||||
<script src="[(#CHEMIN{js/vue.min.js}|timestamp)]" type="text/javascript"></script>
|
<script src="[(#CHEMIN{js/vue.min.js}|timestamp)]" type="text/javascript"></script>
|
||||||
|
<script src="[(#CHEMIN{js/papaparse.min.js}|timestamp)]" type="text/javascript"></script>
|
||||||
<script src="[(#CHEMIN{js/gamutable.js}|compacte|timestamp)]" type="text/javascript"></script>
|
<script src="[(#CHEMIN{js/gamutable.js}|compacte|timestamp)]" type="text/javascript"></script>
|
||||||
})]
|
})]
|
||||||
|
|
|
@ -100,10 +100,15 @@ Vue.nextTick(function () {
|
||||||
|
|
||||||
function exporterCSV(json, delimitercsv, name) {
|
function exporterCSV(json, delimitercsv, name) {
|
||||||
let csv = '';
|
let csv = '';
|
||||||
json.forEach((l) => {
|
if (delimitercsv) {
|
||||||
csv += l.join(delimitercsv);
|
csv = Papa.unparse(json, { delimiter: delimitercsv });
|
||||||
csv += '\r\n';
|
} else {
|
||||||
});
|
csv = Papa.unparse(json);
|
||||||
|
}
|
||||||
|
//json.forEach((l) => {
|
||||||
|
//csv += l.join(delimitercsv);
|
||||||
|
//csv += '\r\n';
|
||||||
|
//});
|
||||||
//Download the file as CSV
|
//Download the file as CSV
|
||||||
let link = document.createElement('a');
|
let link = document.createElement('a');
|
||||||
link.setAttribute('href', 'data:text/csv;charset=utf-8,%EF%BB%BF' + encodeURIComponent(csv));
|
link.setAttribute('href', 'data:text/csv;charset=utf-8,%EF%BB%BF' + encodeURIComponent(csv));
|
||||||
|
|
|
@ -131,10 +131,19 @@ Vue.nextTick(function () {
|
||||||
|
|
||||||
function exporterCSV(json, delimitercsv, name) {
|
function exporterCSV(json, delimitercsv, name) {
|
||||||
var csv = '';
|
var csv = '';
|
||||||
json.forEach(function (l) {
|
|
||||||
csv += l.join(delimitercsv);
|
if (delimitercsv) {
|
||||||
csv += '\r\n';
|
csv = Papa.unparse(json, {
|
||||||
}); //Download the file as CSV
|
delimiter: delimitercsv
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
csv = Papa.unparse(json);
|
||||||
|
} //json.forEach((l) => {
|
||||||
|
//csv += l.join(delimitercsv);
|
||||||
|
//csv += '\r\n';
|
||||||
|
//});
|
||||||
|
//Download the file as CSV
|
||||||
|
|
||||||
|
|
||||||
var link = document.createElement('a');
|
var link = document.createElement('a');
|
||||||
link.setAttribute('href', 'data:text/csv;charset=utf-8,%EF%BB%BF' + encodeURIComponent(csv));
|
link.setAttribute('href', 'data:text/csv;charset=utf-8,%EF%BB%BF' + encodeURIComponent(csv));
|
||||||
|
|
1924
js/papaparse.js
Normal file
1924
js/papaparse.js
Normal file
File diff suppressed because it is too large
Load diff
7
js/papaparse.min.js
vendored
Normal file
7
js/papaparse.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
Loading…
Add table
Reference in a new issue