node.js - 在 Node.js 中创建参数化 "components"的最佳方法是什么?

标签 node.js express

最初的问题

我的问题很容易被误解,所以我会举一个例子,或者更好,我会做一个比较。

考虑 ASP.NET Web 应用程序。在那里可以定义 ascx 组件。这些组件非常好,因为它们定义了可重用的代码片段,并具有一些更智能的功能,使它们不仅仅是纯代码片段......而是 Web 应用程序的参数化部分。

当然,考虑到 Node.js 不是 ASP.NET,我的问题是:Node.js 中定义可重用组件(参数化)最相似的解决方案是什么?

谢谢

对于那些不熟悉 ASP.NET 的人

我知道并不是每个人都熟悉 ASP.NET。所以我将在这里详细说明我需要什么。我可以在 Node.js 中将参数传递给 html 或 jade 代码段,但我想做的是将我的 jade/html 代码写入一个文件(它包含一些 div 和其他内容),然后在另一个 jade/html 文档中引用它或在其中传递一个参数。

新修改的问题

当我被告知使用 mixins 来解决这个问题时,我开始寻找它们并尝试了一些,没关系,我设法完成了最简单的 mixins,但是当我不得不让事情变得更复杂一点时,mixins 开始表现得很奇怪。所以现在我想知道它们是否是我一直在寻找的解决方案。所以现在我将详细解释我想要实现的目标(因为我太笼统了)。

我有一个使用 Jade 编写的网页,我需要创建一个可以在整个页面中重复使用的组件。该组件只是一个包含文章的结构化 div。如果我用伪代码编写这个组件,它在 Jadeish 语法中可能看起来像这样:

component article(@title, @subtitle, @articlebody, @writtenon)
.article
  .head {@title}
  .head {@subtitle}
  div(style='float:left;clear:both')
    .body
      {@articlecontent}
    .foot
      {@writtenon}

因此,正如您所看到的,我希望对这堆代码进行参数化,以便我可以在我的页面中像这样重用它:

doctype 5
html
  head
    title = title
  body
    .article('my first art', 'dummy subtitle', 'bla bla bla... lorem ipsum', '12/12/2012')
    .article('my second art', 'dummy subtitle', 'bla bla bla... lorem ipsum', '12/12/2012')

等等...

还要考虑参数可能是长值。在我的示例中,参数之一是文章的正文。我需要在那里插入正文的 html 代码

我在网上搜索以了解如何执行此操作,但找不到任何教程或有效的示例。

你能帮我一下吗?谢谢

最佳答案

我不熟悉 ascx 文件,所以我不知道这是否是您所想的,但是有不同的为 Node.js 编写的模板引擎,允许重用前端模板(类似 html 的文件)。例如,在 Jade发动机有mixins允许您将参数传递给模板。

关于node.js - 在 Node.js 中创建参数化 "components"的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13521099/

相关文章:

sql - 在 Sequelize 后端查询中查找匹配对象

当我注销时 Node.js 停止工作

node.js - NodeJs - 如何避免使用 import 关键字的相对路径

node.js - jwt token 如何确保数据库更改时更新有效负载

json - 我如何通过使用 node.js 从实时 json 数据中提取特定字段来创建一个新的单个 json 对象

javascript - 使用node.js预览上传的图像文件

javascript - 在 Jade/Express 中迭代数组有限制吗?

javascript - 访问隐藏字段数组值时出现问题

提交表单时,jquery 未正确更新 Handlebars 部分 View (express、node.js)

node.js - 无法在快速中间件中获取请求参数