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 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多