如何在普通的前端javascript文件中使用node.js函数



我制作了一个node.js puppeteer页面,用于输出加拿大的新冠肺炎病例。我想使用这个功能,并将其用于显示加拿大新冠肺炎病例信息的javascript前端网站。如何获取此函数并将其导出到javascript页面,以便在那里使用它。这是我迄今为止的代码:

const puppeteer = require("puppeteer")
let dataExplained = {}
async function getCovidCases(){
const browser = await puppeteer.launch()
const page = await browser.newPage()
const url = "https://www.worldometers.info/coronavirus/#countries"
await page.goto(url, {waitUntil: 'networkidle0'})
const results = await page.$$eval(".even", navBars => {
return navBars.map(navBar => {
const anchors = Array.from(navBar.getElementsByTagName('td'));
return anchors.map(anchor => anchor.innerText);
});
})
browser.close()
dataExplained.country = results[15][1]
dataExplained.totalCases = results[15][2]
dataExplained.newCases    = results[15][3]
dataExplained.totalDeaths    = results[15][4]
dataExplained.newDeaths    = results[15][5]
dataExplained.totalRecovered    = results[15][6]
dataExplained.activeCases    = results[15][7]
dataExplained.critical    = results[15][8]
dataExplained.totalCasesPerMillion    = results[15][9]
dataExplained.deathsPerMillion    = results[15][10]
dataExplained.totalTests    = results[15][11]
dataExplained.totalTestsPerMillion    = results[15][12]
dataExplained.population = results[15][13]
return dataExplained
}
let covid = getCovidCases()
covid.then((result) => console.log(result))

请帮忙。谢谢

此node.js代码只会在您的服务器上运行。因此,您必须以某种方式在服务器上运行它,并将结果传达回前端。有几种方法可以做到这一点:

  1. 返回JSON的Ajax调用从前端,您可以对后端进行Ajax调用,后端获取与请求匹配的结果,并将其作为JSON响应返回给前端。前端将JSON解析为Javascript对象,然后将数据插入当前网页。

  2. 在服务器上构建动态HTML用户从您的服务器请求一个网页。您的服务器通过获取所需的数据,然后将数据转换为可显示的HTML,并将预先构建的网页返回到浏览器,浏览器随后显示该网页(其中嵌入了所需数据(,从而动态构建该网页。您可以使用服务器端代码手动构建此网页,也可以使用模板引擎将动态数据合并到网页中。

还有一些变体,前端从服务器请求JSON,然后使用前端模板引擎构建动态内容,并将其插入当前页面。

最新更新