2017-02-02 3 views
0

Ich habe einige Argumente name1, name2, name3. Wie kann ich eine JSON-Datei mit diesen Argumenten erhalten? Ich versuche, dies zu tun, aber ich habe nichts:Wie bekomme ich einen JSON in CasperJS?

var jsonStr = this.evaluate(function(){ 
     var outjson = {}; 
     var outjson = {'name1': name1, 'name2': name2, 'name3': name3}; 
     return JSON.stringify(outjson); 
     }); 
    fs.write('myFile.json', jsonStr, 'w'); 

Antwort

0

Es gibt keine Schließung für die Funktion ist, Sie zu bewerten. Sie können hier etwas darüber lesen: http://phantomjs.org/api/webpage/method/evaluate.html

Deshalb sind die Variablen name1, name2 und name3 sind nicht definiert, wenn Sie die Funktion zu bewerten.

Phantom 2 hat den folgenden Fehler in aktuellen Releases - ein Fehler in einer Funktion ist bewerten steigt keine Ausnahme. In diesem Fall gibt null aus.

Also, Sie haben einen Fehler in Ihrer Funktion bewerten und nichts bekommen.

Sie können das folgende Beispiel versuchen, die druckt

jsonStr: { "name1": 1, "name2": 2 "name3": 3}

var casper = require('casper').create(); 
var fs = require('fs'); 

casper.start('http://casperjs.org/', function() {}); 

casper.then(function() { 
    var jsonStr = this.evaluate(function() { 
     var outJson = {'name1': 1, 'name2': 2, 'name3': 3}; 
     return JSON.stringify(outJson); 
    }); 

    this.echo('jsonStr: ' + jsonStr); 

    fs.write('myFile.json', jsonStr, 'w'); 

}); 

casper.run(); 

und das folgende Beispiel, das

jsonStr druckt: null

+0

Danke, was ist mit Groß- und Kleinschreibung, wenn name1 = 'string1', name2 = 'string2' und name3 = 'string3'. Wie bekomme ich eine JSON-Datei mit diesen Werten? Ich versuche es zu tun, aber ich habe leere Werte .. – ZaurK

+0

@ZaurK Ich habe die Antwort aktualisiert - hinzugefügt JSON Speichern in eine Datei im 1. Beispiel. –

+0

Vielleicht verstehe ich etwas nicht, aber im 1. Beispiel name1 ': 1, es funktioniert gut, aber ich brauche' name1 ': name1, wenn name1 ein Wert ist, der dinamically bekommt und es ist nicht gleich 1. – ZaurK

Verwandte Themen