Sto creando un'applicazione utilizzando node-webkit, quindi c'è molto javascript. Ho scritto una funzione node.js che prenderà una schermata e salvarla sul disco, tuttavia, la salva nella directory principale del progetto e vorrei chiedere all'utente di scegliere una posizione di salvataggio, ma non riesco a trovare una modo per creare una finestra di dialogo di salvataggio del file. Codice attuale:Chiedere all'utente dove salvare il file con Node.js
screen_shot.js:
var fs = require('fs');
exports.buildFile = function(name, value) {
var img = new Buffer(value, encoding='base64');
fs.writeFile(name, img, function(err) {
if(err) {
console.log(err);
} else {
console.log("The file was saved!");
}
});
};
index.html:
...
<script>
var sc= require('screen_shot');
function wait() {
$('#close-popup').click();
setTimeout(function() {screen_shot()}, 10);
}
function screen_shot() {
html2canvas($('body'), {
onrendered: function(canvas) {
var img = canvas.toDataURL("image/png").split(',')[1];
var decodedImg = window.atob(img);
sc.buildFile("sc.png", img);
}
});
}
</script>
...
<a href="#" onclick="wait();" data-role="button" data-theme="j">Screen shot</a>
viene presa la funzione di attesa è solo per dare il popup che sto usando il momento di chiudere prima che lo screenshot .
Ho letto il node-webkit file dialog doc ma non è quello che sto cercando o non riesco a farlo funzionare correttamente.
Questo potrebbe aiutare http://stackoverflow.com/questions/5612373/javascript-saveas-dialog – Seano666
@ Seano666: No, l'OP funziona in un altro ambiente – Bergi