js模块化中如何操作页面dom?
题主说的js模块化应该是node上的模块。
首先模块化并不是node的专利,要在浏览器的时候人们就开始通过命名空间等方式,在浏览器中实现模块化了,模块化的意义在于代码前端的复用。后面有人借住v8引擎开发了node。然后前端开发模式发生了翻天覆地的变化,前端开发开始后裔,前端人员通过node的编译解决了接口mock,更加工程化,结构化的开发代码。
说说操作dom吧,js是一套语法规范,而dom属于浏览器平台的特征,所以在node开发时,一方面是模拟浏览器特性,比如一些测试的时候回常用这些库比如jest-dom,然后如果要真正的放到浏览器中使用,我们会借助编译器,比如babel把我们的代码编译成浏览器平台可用额度。这样我们就可以使用浏览器中未实现的语法。并对低版本的浏览器做出兼容。
现在一些框架,借助虚拟dom的小船,实际上是不建议直接操作dom的,但是会提供虚拟节点的真实引用,也还是dom比如一个链接助件在react中,可以通过ref对外提供a标签的dom实例,帮助其他用户更灵活的拓展。
所以在模块化操作dom与在浏览器上操作dom是一样的,模块化提供的是代码复用的方式,是工程化开发提升开发效率的。所以不会对你操作dom的api有什么过多影响[呲牙]
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有