Передача данных с сервера на страницу HTML - PullRequest
0 голосов
/ 05 мая 2019

У меня есть три страницы: server.js, user.js, index.js. мой сервер берет данные из заголовка запроса и создает объект User. у объекта пользователя есть метод, который вычисляет и сохраняет результат. Я хочу передать результат в index.js или на страницу HTML и манипулировать результатом. Я пытаюсь сохранить результат в статическом глаголе и создать объект в index.page. но я получаю ошибку. есть идеи как это сделать?

    //server.js 

    const User = require('./user.js');
    var express = require('express');
    var app = express();
    app.get('/', function(req, res) {
        res.sendFile(__dirname + '/index.html');
        console.log("connecting to server");
        jsonHeader = JSON.stringify(req.headers);
        user = CreateUserObject(req);
        User.setResult(30); }



    // user.js


class User{
    constructor(){
        this.ip=0;
        this.language =' ';
        this.result = "";
    }

    setUserDetails(requestHeader){
        this.Ip = requestHeader.header('x-forwarded-for');
        this.language = requestHeader.header('accept-language');
    }
    setResult(number){
        User.staticResult = number;

    }
    getResult(){
        return User.staticResult;
    }

};
User.staticResult = 15;
module.exports = User;



//index.js
import User from 'user.js';
var user  = new User();
 ................

1 Ответ

0 голосов
/ 06 июня 2019

Полагаю, ваша проблема заключается в передаче данных в файл HTML.

Если да, то это можно решить с помощью механизма шаблонов.

руль равен единице.из них я считаю простым в использовании

app.js

const handleBars = require('handlebars');
readFile("fileName.html,'utf8').then(
 function(data)
 {
    let template = handleBars.compile(data,{strict:true});
    let replacements = /*assign the value to html file variable enclosed in {{ }}*/
    {
       title : "MyTitle",
       body  : "MyBody"
    }
    let html = template(replacements);
    let fss = require('fs');
    fss.writeFile("test.html", html, function(err) {
    if(err) 
    {
     return console.log(err);
    }
  }

filename.html

<div class="entry">
  <h1>{{title}}</h1>
   <div class="body">
     {{body}}
   </div>
</div>

Для получения дополнительной информации, как использовать руль

...