千变万化的前端工具赋予了前端越来越强大的开发能力和效率,甚至改变了建站方式。VirtualDOM是改变前端开发的众多工具之一。DOM(文档对象模型)是一种定义网站结构的树状模型。选择和遍历DOM是一项成本极高的操作,甚至会直接影响网站的性能。当然,DOM是如何工作的不在今天这篇文章的讨论范围之内。今天的文章更多的是推荐一些库和工具,帮助大家更好的实现VirtualDOM。MaquetteJS这是VirtualDOM的一个实现,你可以使用MaquetteJS创建流畅的用户界面并随时更新相关数据。这是一个用纯JS编写的库,可以与注入CoffeeScript、TypeScritp和JSX等的合成语音一起使用。它只有3kb,是React.js的一个不错的替代品。ReDOM这是我最喜欢的VirtualDOM库之一,你只需要看一下它的语法就可以快速上手。仅2kb的ReDOM让您可以快速渲染和自定义HTML组件。ReactiveJS这是一个模板化的UI库,用于构建高度交互的Web应用程序。ReactiveJS最初是为TheGuardian构建的。具有跨浏览器、跨设备运行的特点,足够可靠。ReactiveJS还附带了Web应用程序所需的许多功能,例如ScopedCSS、自定义组件、SVG和动画。RiotJSRiotJS是一个非常适合初学者的库,它允许使用HTML元素和属性自定义组件,而其他库通常强制使用纯JS语法。RiotJS兼容Node.js环境和浏览器,可以作为Vue.js的替代品。HyperHTML您可以使用HyperHTML创建自定义元素和Web组件,它就像jQuery一样简单,您可以通过CDN加载脚本并访问HyperHTML,您也可以在浏览器中轻松访问它,无需任何复杂的工具。.MithrilMithril是一个听起来很酷很强大的JS库。除了VirutalDOM和You,Mithril还配备了Routing和XHR。您可以使用它来构建单页Web应用程序,而无需依赖其他库。SlimJSslimJS是一个JS库,用于使用本机Web组件API构建自定义Web组件。由于它经常用于本机浏览器组件,SlimJS还附带了一个Polyfill,可以将API填充到尚不支持它的浏览器。如果您喜欢本机开发的方式,那么它是一个很好的框架。尽管它的语法与HTML非常相似,但VSVG显然有自己的喜好。这个名为VSVG的库实际上允许您创建和操作SVG。EmotionSHEmotionSH是一个CSS-in-JS框架,当您使用VirtualDOM创建网站时可能会用到它。有了它,您可以只提取网站的CSS部分,动态更新样式,而无需使用类命名和特定功能。ReactStarterKit如果你最近一直在关注前端相关技术,React现在几乎无处不在。这个ReactStarterKit是一个5短视频课程,帮助初学者入门。ElementsElements是一组iOS组件,用于在Sketch中创建iOS应用程序的原型。ModaalModaal是最易访问的模型库,已通过“WCAG2.0AA级支持”。它是轻量级的,兼容jQuery,可用于视频、图片,甚至Instagram。WordPressify是一个NPM包,可让您在几分钟内启动并运行WordPress开发环境。所有这些都建立在Gulp、LinveReload、PostCSS和Babel等现代工具注入之上,它们使您可以专注于开发,而不是反复调整配置。LandoLando也是一个可以快速方便地创建开发环境的工具,就像上面提到的WordPressify一样。但是,它没有使用Node.js,而是利用了Docker的干净机器容器化技术。WP-DocklinesWP-Docklines是一组图像,可以集成到WordPress主题中或用作Bitbucket、CircleCl和Gitlab等服务的插件。每个图像都捆绑了开发WordPress通常需要的工具,例如PHP代码编辑器、PHPUnit和WP-CLI。WP-LockerWP-Locker基于DockerCompose配置,可以在几分钟内创建一个WordPress开发环境。它建立在Apache、MySQL和phpMyAdmin之上,并且由于它扩展了图像的WP-Docklines,它还有一些用于处理图像的附加工具。DocusaurusDocusaurus也是来自Facebook的一个开源项目,是一个用于为您的项目创建Web文档的工具。它是使用React和Markdown创建的,您可以使用它轻松编写文档、维护甚至为网站创建整个博客。VSCodeYoYeoman是一个Node包,你可以通过选择预制脚手架来快速创建项目。如果您使用的是VisualStudio,此插件可以进一步简化您的工作流程,因为它允许您直接在VisualStudio的代码窗口中运行Yo命令。BluebirdJSBluebirdJS是一种工具,可让您在所有浏览器(甚至是Netscape)中使用Promise、await和异步功能。Promises是最新的Javascript规范中突出显示的一个特性,它使代码更加紧凑、可读和可维护。PrettierPrettier是一种工具,可帮助您格式化代码以符合语言规范和标准。它将帮助您从头到尾重写代码,确保您的团队协作更高效,而无需在代码风格上来回讨论。
