Read the statement by Michael Teeuw here.
.txt file include
-
sry wasn’t aware of that a buffer gets returned instead of a string if there is no encoding specified
fs.readFile('Test-temp.txt', 'utf8', (err, data) => {
-
@strawberry-3.141 said in .txt file include:
fs.readFile(‘Test-temp.txt’, ‘utf8’, (err, data) => {
Hi, sorry.
It didn´t work :/Here is the
node_helper.js
codeconst NodeHelper = require("node_helper"); const fs= require("fs"); module.exports = NodeHelper.create({ //here comes the part of the nodehelper after the 3 dots as posted above socketNotificationReceived: function(notification, payload) { if(notification === 'START'){ this.config = payload; this.readData(); setInterval(() => { this.readData(); }, this.config.updateInterval); } }, readData: function(){ //to read a file to do the following fs.readFile('Test-temp.txt', 'utf8', (err, data) => { if (err) throw err; this.sendSocketNotification('DATA', data); }); } }); and here is the sensor.js code: Module.register("sensor",{ defaults: { updateInterval: 30*60*1000 //reads the file every 30 mins }, start: function(){ this.sendSocketNotification('START', this.config); }, socketNotificationReceived: function(notification, payload) { if(notification === 'DATA'){ this.dataFile = payload; this.updateDom(); } }, getDom: function(){ var wrapper = document.createElement('div'); if(this.dataFile){ wrapper.innerHTML = this.dataFile; } else { wrapper.innerHTML = 'No data'; } return wrapper; } });
Waht did i wrong? :D
I hope you can help me.
Note from admin: Please use Markdown on code snippets for easier reading!
-
this works for me you had everywhere weird quotes and the updateinterval was also wrong
Module.register("sensor",{ defaults: { updateInterval: 30 * 60 * 1000 //reads the file every 30 mins }, start: function(){ this.sendSocketNotification("START", this.config); }, socketNotificationReceived: function(notification, payload) { if(notification === "DATA"){ this.dataFile = payload; this.updateDom(); } }, getDom: function(){ var wrapper = document.createElement("div"); if(this.dataFile){ wrapper.innerHTML = this.dataFile; } else { wrapper.innerHTML = "No data"; } return wrapper; } });
const NodeHelper = require("node_helper"); const fs= require("fs"); module.exports = NodeHelper.create({ //here comes the part of the nodehelper after the 3 dots as posted above socketNotificationReceived: function(notification, payload) { if(notification === "START"){ this.config = payload; this.readData(); setInterval(() => { this.readData(); }, this.config.updateInterval); } }, readData: function(){ //to read a file to do the following fs.readFile("Test-temp.txt", "utf8", (err, data) => { if (err) throw err; this.sendSocketNotification("DATA", data); }); } });
-
@strawberry-3.141
Mh… than i don´t know…
i have copy your code but it doesen´t work…
I need to change anything els?And thank you for your patience :)
-
@strawberry-3.141 1_1472575446381_sensor.js 0_1472575446381_node_helper.js 0_1472575579268_config.js
Here are my code files. Maybe this can help?
-
do you get any error in the console or in the electron console (cmd+shift+I)
did you place your Test-temp.txt in ~/MagicMirror or somewhere else?
-
@strawberry-3.141
Sorry i hade no time the last days.I put the Test-temp.txt in ~/MagicMirror and for tests ind~/MagicMirror/modules/sensor.
But nothing happens.I get only an error about the weatherforecast bu nothing els…
-
@dominic can you remove the weatherforecast from the config when its causing issues, so we can troubleshoot this module?
-
Hm, maybe you could try this.
Put the file in the modules folder and open it with “./Test-temp.txt“
Additionally i would suggest to go with lowercase during testing to exclude case sensitive mistakes. -
@yawns electron is running in
~/MagicMirror
, so putting the file in the modules directory and do./Test-temp.txt
won’t work. The code is generally working I tested it on my rpi