Node.js:根据服务器响应更改视图

时间:2019-11-20 21:37:42

标签: javascript node.js express ejs

关于服务器响应,我想更改呈现的网页。

详细介绍了Mopre,我有一个通用的错误页面,但是如果节点服务器找不到用户,我想将该数据传递给视图,并且我希望错误消息更改为“找不到用户”

这是服务器端的代码:

getUserProfile(username).then(user=>{
      // bla bla
    }).catch(err => {
       if (err.code == 'NONEXISTANT_USER') {
           var wrongUser = 'true';  
           res.render('error.ejs', {overwrite:wrongUser});
        }
        else {
            res.render('error.ejs');
        }
        wrongUser = 'false';
    });

这是ejs模板上的代码:

<script>
      var checking_for_user = <%- JSON.stringify(overwrite) %> ;
      if (checking_for_user) {
        document.querySelector('.msg .text-center').innerHTML='User does not exist! Please go back to the <a href="/index">Index Page</a>';
      }
    </script>

在此之后,在ejs文件的某个位置:

<div class="msg">
                <h1 class= "text-center">There was an error. Please go back to the <a href="/index">Index Page</a> </h1>
</div>

不幸的是,这是行不通的,因为消息永远不会改变。 我已经尝试过调整许多变量,但是我不明白。

0 个答案:

没有答案