【发布时间】:2016-11-23 20:14:23
【问题描述】:
为了简化问题,假设有一个 HTML 页面,其中包含 CSS 和 JS 文件。没有服务器。
现在请求在这个简单的 Web UI 中打开/关闭功能。
问题是,例如,一个新特性意味着改变 HTML 结构来添加一个新组件,所以现在的 HTML 有点不同。
此外,页面本身的 CSS 需要更改以支持新组件。当然,还有 javascript 代码需要更改以适应对 HTML 所做的更改。
当然,如果这个组件是完全“隔离的”并且只是有它自己的 CSS、javascript 和 html 模板文件,那会容易得多,但它确实需要对其周围的东西进行更改,到它所在页面的HTML/CSS/JS。
如何将如此复杂的过程简化为简单的“功能切换”?
此外,为了将复杂性提升到一个新的水平,这个新功能可能需要更改项目中使用的某些库版本,但在切换功能时,这是一个完全不同的难度......但是让我们在讨论中忽略这部分因为我对上面提到的事情更感兴趣。
【问题讨论】:
-
你能创建一个包含这些标志的文件吗?然后让 javascript 读取该文件以查看它是否已打开/关闭?也许将 id 映射到布尔值。就像 {header: false} 一样。然后循环遍历并隐藏所有错误的元素。
-
@Taztingo - 知道打开/关闭哪些功能不是问题。简单地隐藏/显示内容也无法解决复杂的 UI 更改。
-
为什么不能解决复杂的 UI 变化?您有一个可以在 Javascript 中与之交互的标志吗?如果你想隐藏一个特性然后隐藏它,你希望一个特性显示然后显示它。如果您希望功能以特定方式做出反应,请检查标志。一个例子不仅对我有帮助,对其他人也有帮助。
-
@Taztingo - 我想出了一个解决方案,请在下面查看并告诉我您的想法。
-
很好,我一定会看看的。
标签: javascript git architecture