Ich möchte N-Werte in einer vorhandenen Datei durch Platzhalter ersetzen.nodeJS mehrere Werte in einer Datei ersetzen
Wenn eine Postanforderung in einer ExpressJS-Anwendung ausgelöst wird, müssen die Platzhalterwerte in einer Datei geändert werden.
Zum Beispiel der SASS-Datei:
$textColor: ##textColor##;
$backgroundColor: ##backgroundColor##;
Und meine Funktionalität, die mit 1 Ersatz funktioniert gut:
router.post('/', function(req, res) {
fs.readFile('main.scss', 'utf8', (err, data) => {
if(err) {
console.log('An error occured', err);
}
backgroundColorToReplace = data.replace(/##backgroundColor##/g,
req.body.backgroundColor);
// This value has to be replaced as well
textColorToReplace = data.replace(/##textColor##/g, req.body.textColor);
fs.writeFile('main.scss', backgroundColorToReplace, (err) => {
if(err) {
console.log('An error occured', err);
}
console.log('Colors successfully changed');
});
});
res.json({
textColor: req.body.textColor,
backgroundColor: req.body.backgroundColor
});
});
Wie kann ich dieses Problem lösen? Gibt es einen Weg?
Beachten Sie auch, dass dies die 'textColor' und' backgroundColor' für alle zukünftigen Anfragen von allen zukünftigen Benutzern ändert. Ist das wirklich was du beabsichtigst? Oder soll das eine benutzerspezifische Einstellung sein? – jfriend00
@ jfriend00 ja ich weiß. Es ist ein Testfall nur zum Spielen und Verstehen ein bisschen mehr über die Programmierung in NodeJS. – pkberlin