隐藏匿名用户的一些HTML块

如何隐藏访问我的应用程序的匿名用户的一些HTML块。 我不使用任何模板引擎。 我的后端是在node.js

什么是实施这个最好的方法?

if (loggedin) <div id="logged-in"> Some menus for Loggedin User </div> else <div id="anonymous"> Some menus for Anonymous user </div> 

       

网上收集的解决方案 "隐藏匿名用户的一些HTML块"

你应该使用模板引擎。

如果你不想这样做,你可以构build一个函数来读取用户是否在一个会话中,然后打印/包含一个dynamic版本的HTML(header,body,div或者你需要的任何东西)给用户用于login用户的特定数据,或打印/包括注销用户的HTML(标题,正文,div或任何你需要的)的通用版本

正如其他人所指出的,模板引擎最有可能是最好的select。 这正是他们devise要解决的问题。 此外,现在介绍一个简单的逻辑将比稍后介绍一个临时解决scheme过于繁琐时更不痛苦。 (实际上,临时解决scheme可能会很麻烦。)

然而,另一个可能的解决scheme是使用2个不同的HTML文件,让你的function根据用户是否login来select要发送给用户的哪一个。这只有在页面根据login状态完全不同的情况下才真正可行。 即使如此,模板引擎还允许通过在页面中包含组件文件来实现更强大的解决scheme,从而允许您在不同页面之间共享页眉,页脚或任何其他常见元素。

如果您仍然针对模板引擎,并且不想使用不同的HTML文件,则可以基本上执行自己的特定模板。 把一些stringreplace到HTML中,将文本加载到文件中的string中,并使用string.replace或类似的东西。 这里描述了一个很好的string.replace例子。 如果您select这样做,请注意您的“要replace的string”不会与HTML或页面中使用的任何其他语言冲突。