<div id='universals' data-path='/a/' data-load='1'></div>
这是一个奇怪的案例。我有前端代码(JavaScript),它知道资源的位置是基于我通过PHP传递给它的路径,它写了上面的HTML。
这是一个很酷的功能,它允许我简单地重命名服务器上我的文件夹的根目录,一切都继续工作,因为PHP确定当前工作目录并通过上面的代码将其发送到客户端。
这是一种反思形式。
但是我想将它构建到前端的应用程序框架中。
现在我的javascript库,我们称之为foo.js依赖于dom元素。我很确定这不是一个好习惯。
我的计划是将id设置为这样。
foo.setUniverisal('#universal');
然后在文档中输入需要哪些属性。
消除任何dom依赖的任何其他想法或更好的方法?
答案 0 :(得分:1)
我认为最好的方法是最简单的方法:
foo.setDataPath("pathToData")
然后,您的客户端“粘合”代码(将您的库,HTML和PHP放在一起的代码)将从您的标记中获取路径并调用foo.setDataPath。这将是最正交的设计(What is "Orthogonality"?)。
可能相关的情况示例:如果从HTML中初始化此库,如果无法生成此标记,该怎么办?例如,因为HTML将以静态方式(或通过CDN)提供。