【问题标题】:Building An Extendable Website With Nodejs使用 Nodejs 构建可扩展的网站
【发布时间】:2016-01-13 06:36:15
【问题描述】:

我希望构建一个能够通过插件进行高度扩展的网站框架。核心网站将包括一些可供各种页面使用的全局功能,但其想法是让插件真正驱动整个网站。

虽然基本核心将用于显示一些通用页面,但我希望插件能够进一步扩展站点,处理完整路由之间的各种事情,以覆盖当前核心页面的部分。

这个想法类似于 Wordpress 如何拥有允许完全控制网站呈现和外观以及功能和特性的插件。

在此设置中,插件可以控制做很多事情,例如:

  • 处理核心中未定义的路由。 (甚至覆盖现有路线。)
    • 包括能够呈现核心中已不存在的页面。
  • 向页面添加了自定义 .css 和 .js 文件。
  • 覆盖现有数据/模板。
  • 添加可在其他插件之间使用和共享的配置。
  • 等等。

但是,我不确定在使用 Node.js 时从哪里开始做这样的事情。更不用说在哪里寻找类似的例子了。

对于我的核心网站,我想使用一些特定的模块,例如:

  • 快递
  • vash(用于 html 引擎)
  • 护照(用于认证)
  • less-middleware(用于处理基于 .LESS 的 css 文件)

从那里允许插件做任何他们想做的事情。

我正在寻找关于这个想法的一些建议、现有实现的示例等。如果有的话。

【问题讨论】:

    标签: javascript node.js plugins


    【解决方案1】:

    我认为已经有类似的网站/CMS。

    您会发现pencilblue,它允许构建自己的插件并与他人共享:https://pencilblue.org/。这个看起来很有趣,它已经构建了插件,它们允许其他人为他们的项目做出贡献。

    在这里,您可以比较 CMS 在 nodejs http://y-designs.com/blog/node-cms-comparison-2015/ 上的构建

    我认为这是一个开始了解其他人如何解决问题的好地方。

    【讨论】:

    • 谢谢。 Pencilblue 看起来以我自己的方式做我想做的事。可悲的是,他们重新发明了轮子,而不是使用预先存在的众所周知的模块。将我的新个人框架建立在他们的一些概念上,同时仍然使用 express 和我已经喜欢的其他一些东西。
    • 如果您打算将其创建为开源和/或看到其他人加入的地方,我会感兴趣 :)
    • 目前这可能会因为一些原因而保持封闭源。一个是这或多或少特定于网络核心的某个主题。因此,大多数核心功能对于特定的数据库设置都是静态的。两个是我认识的一些人会想从中窃取工作并试图出售它,我没有兴趣看到它。所以我不再支持开源的东西了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-20
    • 2011-06-27
    • 1970-01-01
    • 2011-04-17
    • 1970-01-01
    • 2023-03-14
    相关资源
    最近更新 更多