新手求教:render传递json到前端页面读取不了
发布于 12小时前 作者 bismarch 47 次浏览 来自 问答

代码如下:

db.collection('tblKSection', function (err, collection) {
                if (err) {
                    console.log(err);
                } else {
                    collection.find({}, {_id: 0}).toArray(function (err, docs) {
                        section = docs;
                        var timer = setInterval(function () {
                            if (book && section && knowledge && chapter) {
                                res.render('addresource', {
                                    knowledge: knowledge,
                                    book: book,
                                    chapter: chapter,
                                    section: section
                                });
                                clearInterval(timer);
                            }
                        }, 200);
                    });
                }
            }); 

addresource.ejs

<script>
    var book = "<%= book %>";
    var knowledge = "<%= knowledge %>";
    var chapter = "<%= chapter %>";
    var section = "<%= section %>";
    alert(book);
</script>

输出结果为: [object,object][object,object][object,object] 求指导!!

4 回复

object 传到前端需要转化一下 book|json|raw

上面是swig的filter函数。ejs应该有对应的转换函数

@leapon 我发现接到的是一个string "[object, object],…我就蒙了

@bismarch 在 node 里你可以查一下,book 等对象是不是期待的值。

回到顶部