ES2017 中的 Object.getOwnPropertyDescriptors()

本章介绍了 ECMAScript 2017 的 Object.getOwnPropertyDescriptors() 特性 。

概述

Object.getOwnPropertyDescriptors(obj) 返回指定对象 obj 上自有属性对应的属性描述符: 继续阅读

Webpack 和 Rollup :一样但又不同

4月初,Facebook 将一个 巨大的 pull 请求 合并到了 React 主分支(master) 中,将其现有的构建流程替换为基于 Rollup ,这一举动 促使 一些人发很疑惑 “你为什么选择 Rollup 而抛弃 webpack ”?

这是一个完全合理的问题。Webpack 是现代 JavaScript 社区最成功的故事之一,每月有数百万的下载量,为成千上万的网站和应用提供支持。它有一个庞大的生态系统,许多贡献者,而且作为一个社区开源项目,还有一个 有意义的财务支持

相比之下,Rollup 并不起眼。但 React 并不孤单 – Vue,Ember,Preact,D3,Three.js,Moment 以及其他许多知名的库也使用 Rollup 。世界到底怎么了?为什么我们不能只有一个大众认可的 JavaScript 模块化打包工具? 继续阅读

使用 webpack 3 构建高性能的应用程序

几天前,我有幸升级了我们项目的 Webpack 构建,因为我们要努力改进应用程序的性能。 最大限度的压缩 Webpack 构建包,无疑给我们带来了显著的改进。

在这里,我将尝试分享一些参考指南,可以帮助你更好地了解 Webpack 配置,并为你正在进行的项目找到一种最佳设置。

注意: 我仅在下面的示例中显示了部分代码,但请注意,插件配置的顺序对于其中一些可能至关重要。本文的底部包含了全部要点。

迁移 webpack 版本

如果您仍在考虑是否升级你的 webpack 1 ,我会告诉你 – 肯定升级。v1 → v2 可能有点麻烦,但 v2 → v3 在98%的情况下可以平滑升级(根据Webpack的团队统计)。

单靠迁移将提高捆绑包的性能并显著降低文件大小。我们在 v2 中获得了 tree shaking 功能,而在 v3 中获得了 作用域提升(scope hoisting)。第一个来自 v2 的内置功能,但是 作用域提升(scope hoisting)需要在 v3 中使用 ModuleConcatenationPlugin 来启用。
继续阅读

为 Progressive Web App 提供的 Webpack 加载器和插件

我假设你已经知道什么是 Webpack ,为什么它真棒,它是如何工作的,所以让我们开始:

可能你已经知道了 Webpack 的这些常用的工具,比如: style-loaderhtml-webpack-pluginextract-text-webpack-pluginfile-loader 和其他流行的一些加载器或插件。 继续阅读

JavaScript 模块简史

你是否是 JavaScript 新手?并且对模块,模块加载器和模块打包器感到困惑吗?或者你已经编写了一段时间的 JavaScript ,但是没法掌握模块的一些术语?你是否听过 CommonJS、AMD、Browserify、SystemJS、Webpack、JSPM 等等术语,但是不理解我们为什么需要它们?

我会试着解释他们是什么,他们试图解决什么问题,以及他们如何解决这个问题。 继续阅读

物联网大潮已来,前端工程师你准备好了吗?[ 杭州 上海 ] 阿里云 IoT 前端招贤纳士

IoT大潮已来,前端工程师你准备好了吗?[ 杭州 上海 ] 阿里云 IoT 前端招贤纳士

经历了富交互应用、无线、Node.js 等多次重大变革,前端技术正向着更深更广的方向飞速发展。

物联网大潮到来,前端技术及 JavaScript 面临着历史性的挑战和机遇。

  • 如何让 JavaScript 运行在智能硬件和边缘节点中?
  • Web 天生的动态性如何启发与变革硬件嵌入式开发?
  • 如何帮助开发者高效的开发物联网平台应用,并让其数据和界面自由的部署和流转?
  • 如何设计实现满足城市、工业、家庭等不同场景的应用和界面开发框架?
  • 如何让物联网、智能家电厂商快速开发高体验的APP,甚至不用写一行代码?
  • 如何让语音、视觉可以无缝的连接各种物联网服务?
  • 用户体验的初心如何创造更美好的人与物的交互体验?

如果你对以上话题感兴趣,欢迎找我们聊聊。

如果你想寻求更大的技术挑战和空间,也欢迎找我们聊聊。

阿里云IoT事业部 官网:https://iot.aliyun.com/

继续阅读