A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.
Read the statement by Michael Teeuw here.
Async Functions inside node_helper.js
- 
 I wrote a little MagicMirror module which web scrapes a website with puppeteer. 
 Therefore I’ve used async functions to fetch the data.
 It’s working fine but as soon as I send it back to my main.js file it appears as a Promise and I can’t process the data.Any suggestions how to wait for the data before sending it to the main.js file? ... socketNotificationReceived : function(notification, payload) { var self = this switch(notification) {case"CASE_1": text = scrape("https...") this.sendSocketNotification("text",text) break}} ... async function scrape(url){ try{ const browser = await puppeteer.launch() const page = await browser.newPage(); await page.goto(url) const [el] await page.$x("...") const txt = await el.getProperty("textContent") const rawTxt = await txt.jsonValue browser.close() return rawTxt} catch { return "ERROR"}}
- 
 
- 
 @magmirusr you will have to do promise.then in the non-async method to wait for the data 
- 
 Hence I’ve utilized async capacities to get the information. It’s turned out great however when I send it back to my main.js record it shows up as a Promise and I can’t handle the information. 
 Thanks.
 Aaki working at Bizzeonine
- 
 case "CASE_1": scrape("...").then((text) => { this.sendSocketNotification("text", text) }) breakOr case "CASE_1" const AsyncJob = async () => { var text = await scrape("...") this.sendSocketNotification("text", text) } AsyncJob() break
- 
 @mmrize 
 Thank you very much!!! It’s working now. :)
- 
 K kayakbabe referenced this topic on K kayakbabe referenced this topic on

