当前位置: 首页 > 面试题库 >

在node / express + ejs中将对象传递给客户端?

南门正业
2023-03-14
问题内容

我有一个很大的对象,需要将其传递给客户端脚本中的函数。我尝试使用JSON.stringify,但是这种方法遇到了一些问题-
主要与性能有关。是否可以在ejs中执行类似的操作?

app.get('/load', function(req, res) {
    var data = {
        layout:'interview/load',
        locals: {
            interview: '',
            data: someLargeObj
        }
    };
    res.render('load', data);
});

在我的客户端脚本中,我会将这个对象传递给类似这样的函数

<script type="text/javascript">
    load(<%- data %>); // load is a function in a client script
</script>

当我尝试这个我得到

<script type="text/javascript">
    load();
</script>

要么

<script type="text/javascript">
    load([Object object]);
</script>

问题答案:

那是预期的行为。您的模板引擎正在尝试从对象创建一个字符串,该字符串会导致[Object
object]。如果您真的想要传递这样的数据,我认为您通过对对象进行字符串化来做正确的事情。



 类似资料:
  • 问题内容: 我在服务器上有一个非常重量级的查询,它会生成新的页面渲染,并且我想将查询的一些结果传递给客户端(作为对象的javascript数组)。基本上是这样,因此我不必稍后再进行单独的JSON查询即可获得相同的内容(通常是静态的)。数据最终将是有用的,但最初没有用,因此我没有将其直接放入文档中。 数据是一个对象数组,最初只使用一些对象。我想传递整个数据或传递一些子集(取决于情况)。我的玉看起来像

  • 问题内容: 我遇到了一些问题,无论何时渲染视图,我都试图发送一个对象供我的Javascript客户端使用。我以这种方式发送(我正在使用车把) //然后在我的视图中,在脚本标签内,我尝试获取该var并进行打印 结果是这样的: 而且我不能使用它的任何属性,因为它是未定义的 问题答案: 您可以将对象作为字符串发送。 喜欢 在客户端,您可以解析它以获取对象 喜欢 现在您可以使用loc作为对象。

  • 嘿,伙计们,我目前已经实现了一个路线,负责根据他的请求从我的服务器上检索信息,现在我有兴趣将我的对象转移到坐在我视图中的客户端脚本。我可以使用Res.Render传输对象吗?

  • 问题内容: 可能是一个非常基本的问题,但我似乎找不到简单的答案。 我有一个利用Angular的GET方法,该方法从特定的url()请求一个Promise 。 在此服务器上,我运行可以处理GET请求的快速脚本脚本。 server.js 我可以使用Angular GET方法与URL_OF_INTEREST通信,如下所示: 但是,字段数量,货币,来源和描述需要从Angular客户端应用程序理想地传递。

  • 问题内容: 我在php中有对象,每个对象代表一个“项目”以及与之相关的所有信息。 当用户浏览页面时,这些对象应传递给javascript。理想情况下,镜像相同的结构,因此我可以使用Raphael在我的网站上将每个项目及其信息显示为单独的形状。 但是,如何将对象从php转换为javascript? 问题答案: 您可以将PHP对象转换为数组,然后使用JSON函数对其进行编码。之后,从JavaScrip

  • 问题内容: 这里有角的新手。我试图找出将对象传递给指令时出了什么问题。 这是我的指令: 这是我调用指令的模板: 是一组对象。 当我运行此,日志,而日志罚款的范围,甚至有一个与所有的数据,我找孩子。 我不确定我在这里做错了什么,因为这种确切的方法以前对我有用。 编辑: 我已经用所有必需的代码创建了一个插件:http ://plnkr.co/edit/uJCxrG 如您所见,该作用域在范围中可用,但我