Richard MacManus 解释 Daniel Kehoe 的 方法 来构建网站,他称之为“无堆栈”
Kehoe 的方法基于 三种主要的 Web 技术
- ES6 模块:JavaScript ES6 可以支持导入模块,浏览器也支持这些模块。
- 模块 CDN:现在可以从第三方内容交付网络 (CDN) 下载 JavaScript 模块。
- 自定义 HTML 元素:开发人员现在可以通过 Web Components 创建自定义 HTML 标签。
使用无构建过程和仅内置于浏览器的功能,但这仍然可以为你提供一个非常强大的设置。你仍然可以使用 npm 上的东西。你仍然可以获得模板。你仍然可以使用组件进行构建。你仍然可以根据需要获得隔离。
我认为今天你
- 放弃了一些 DX(热模块重新加载、JSX、框架小工具)
- 获得了一些 DX(可以跳入项目并开始工作)
- 放弃了一些性能(没有树状抖动,大量网络请求)
- 扩大了招聘范围(更多人了解核心技术而不是特定工具)
但很容易想象一个未来,我们放弃的更少,获得的更多,从而使我们今天使用的工具变得不那么必要。我确信我们总会找到方法将更多工具塞进我们正在做的事情中。锤子某种东西钉子。
我仍然完全不明白为什么要进行热模块重新加载。我看到的唯一需要它的原因是缺乏 URL 架构和状态管理,这会导致 Web UX 不佳。这又是另一个 DX 诱饵和转换。
哇!当我正在开发一个网站而没有它作为本地开发体验的一部分时,我非常讨厌。理想情况下,对我来说,预览应该在每次按键(不会导致语法错误)时更新。
你可以使用 webpack 或 rollup,它可以解决所有问题,除了 jsx,这需要更多设置
Polymer 也是一个框架,即使它来自 cdn