qq_42930394 2021-03-31 15:54 采纳率: 50%
浏览 36
已采纳

nodejs MongoDB字母字符串渲染到前台变成中文问题

1、这是要渲染的前台页面:数据库里数据没有问题与用户输入的数据类型相吻合,但是把数据库数据渲染到前台页面字母字符串却变成了中文。下面是渲染页面代码:

//导入用户集合构造函数
const { User } = require('../../model/user');

module.exports = async (req, res) => {
    //数据太多不好显示,要做页码的分页
    //首先拿到用户传递过来的参数(页码数)
    let page = req.query.page;
    //其次查询数据库的总数据条数
    let count = await User.countDocuments({});
    //设置每页显示数据条数
    let pagesize = 5;
    //计算总共显示多少页
    let total = Math.ceil(count / pagesize);
    //计算每页开始时是从哪条数据开始
    let start = (page - 1) * pagesize;
    //用户进入到列表页面要把数据库的数据显示到列表上
    //查询数据库数据参数是{}表示查询所有数据,users为数组
    let users = await User.find({}).limit(pagesize).skip(start);
    res.render('admin/user', {
        users: users,
        page: page,
        total: total
    });
};

这是要渲染的模板文件代码:

 <!-- 内容列表 -->
        <table class="table table-striped table-bordered table-hover custom-table">
            <thead>
                <tr>
                    <th>ID</th>
                    <th>用户名</th>
                    <th>邮箱</th>
                    <th>角色</th>
                    <th>状态</th>
                    <th>操作</th>
                </tr>
            </thead>
            <tbody>
                {{each users}}
                <tr>
                    <!-- 在$value._id前面加上@符号是为了把ID不带引号原文输出 -->
                    <td>{{@$value._id}}</td>
                    <td>{{$value.username}}</td>
                    <td>{{$value.email}}</td>
                    <td>{{$value.role == 'admin'?'超级管理员':'普通用户'}}</td>
                    <td>{{$value.state == 0?'启用':'禁用'}}</td>
                    <td>
                        <a href="user-edit.html" class="glyphicon glyphicon-edit"></a>
                        <i class="glyphicon glyphicon-remove" data-toggle="modal" data-target=".confirm-modal"></i>
                    </td>
                </tr>
                {{/each}}
            </tbody>
        </table>
        <!-- /内容列表 -->

这个问题困扰我很久,希望大佬们给提提意见。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 写回答

2条回答 默认 最新

  • 关注

    应该是设置编码有问题,你的页面设置的是什么字符集呢,或者你多试几种浏览器,也有可能是浏览器自动翻译的原因,如果是自动翻译的原因必须在页面或css里面阻止自动翻译功能。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里