【问题标题】:Does setting node_env=production handle conditional templates?设置 node_env=production 是否处理条件模板?
【发布时间】:2018-09-03 05:42:18
【问题描述】:

我正在使用大量的 nunjucks 模板和带有 keystone 的自定义 api 端点。设置 node_env=production 缓存模板是否返回数据,特别是因为它有很多动态信息。它是缓存渲染的还是只是模板文件?另外,自定义 /api 端点怎么样……假设数据没有被缓存?数据库结果如何?感谢您提供任何信息。

【问题讨论】:

    标签: express keystonejs


    【解决方案1】:

    NODE_ENV 设置是Express 约定,因此效果适用于 Express 和相关中间件,而不是 Keystone 核心。如果您添加了任何 Express 中间件包,则必须查看其使用文档以了解可能的行为变化。

    Setting NODE_ENV to “production”发快递:

    • 缓存视图模板。
    • 缓存从 CSS 扩展生成的 CSS 文件。
    • 生成不那么冗长的错误消息。

    我正在使用大量的 nunjucks 模板和带有 keystone 的自定义 api 端点。设置 node_env=production 缓存模板是否返回数据,特别是因为它有很多动态信息。它是缓存渲染的还是只是模板文件?

    Express 只在内存中缓存视图模板,而不是渲染结果。页面仍将使用相关变量在每个请求上重新呈现。 Express 的Using Template Engines 文档底部有一条关于此的说明。

    如果没有缓存数据,那么自定义 /api 端点呢?

    Express 默认不包含任何 API 端点缓存。

    数据库结果如何?

    MongoDB Node.js 驱动程序(和 Mongoose ODM)不缓存查询结果。

    【讨论】:

      猜你喜欢
      • 2012-03-04
      • 2019-01-18
      • 1970-01-01
      • 1970-01-01
      • 2021-08-31
      • 1970-01-01
      • 2011-07-05
      • 2013-10-29
      相关资源
      最近更新 更多