如何在服务器端语言组件中封装javascript
How to encapsulate javascript in a server-side language component?
是否有任何设计模式或我可以用来创建自包含的组件,封装一些功能,包括添加脚本标签到最终的html输出?
例如,我已经成功构建了一个Modal_Window包,我可以这样使用它:
$mw = new Modal_Window($template); // $template is the object in charge of rendering the html template
$mw->setContent('Click here')->setBoxContent('<img src... />');
echo $mw;
在内部,Modal_Window将负责告诉模板对象添加必要的js库。
嗯,这就是我的想法。我想知道的是,这是否是处理这个问题的方法,或者是否有更标准的方法(或者我是否不应该封装它)。这有什么已知的模式吗?是否有可能以一种更解耦的方式创建这种组件,以便我可以共享它?因为它完全依赖于模板对象,以及它检查js库不被添加超过一次的方式(假设我有2个组件:Modal_Window和Accordion,都需要jquery,我不希望它被添加两次)
我建议你有一个中央模块管理器(通常这被称为你的应用程序或框架)。
然后模块向模块管理器注册,并告诉模块管理器它有资产x, y和z,当使用该模块时必须适当地包含这些资产。关于这些资产如何处理、存储、渲染或一般处理的更多信息是特定于框架/应用程序的。
但是对于包含JavaScript,我会说模块只是向模块管理器声明JavaScript依赖关系。然后模块管理器可能会确保满足依赖关系,并且依赖关系只包含一次。
相关文章:
- 使用解析为javascript源的.php,如何使用条件语句将javascript代码封装在php括号之间
- 将 JavaScript 封装在命名空间中
- 为什么封装的Javascript函数有如此巨大的性能差异
- Javascript:正常函数的命名空间封装
- Javascript继承和封装,高效完成
- 在封装的JavaScript函数中设置用于重用的私有变量
- 封装在JavaScript中,它存在吗?
- 如何在 JavaScript 中创建封装的“类”
- Javascript 类封装行为
- 隐藏/封装JavaScript逻辑
- 何时封装在javascript中
- Javascript:封装状态,暴露行为
- Javascript:继承封装的变量
- 在 JavaScript 中封装尾部调用优化的实用程序
- 封装/数据隐藏在Javascript中
- JavaScript 模块模式中的封装
- 用函数回调封装JavaScript
- 封装Javascript中Try-Catch块中的函数
- 如何在服务器端语言组件中封装javascript
- 为了样式化的目的,在内联元素中使用封装javascript是不是不好的做法?