[关闭]
@qinyun 2018-07-17T03:14:27.000000Z 字数 3315 阅读 1495

前端周报第69期:Udacity弃用React Native,微信小程序将支持npm、分包和可视化编程

未分类


前端周报专注大前端领域内容,帮助开发者了解一周前端热点;分为新闻热点、开发教程、工程实践、深度阅读、开源项目等栏 目。欢迎关注【前端之巅】微信公众号(ID: Frontshow),及时获取前端周报。

新闻热点

国内国外,前端最新动态

微信小程序的下一步:支持NPM、小程序云、可视化编程、支持分包:7月11日,微信公开课微信小程序技术专场在上海举行,会上,微信公布了面向开发者的技术规划,内容主要包括小程序技术能力与规划、小程序生态体系、小程序性能优化三个方面。

未来的规划主要为:

ESLint的NPM账户遭黑客攻击:7 月 12 日,黑客攻击了 ESLint 维护者的 NPM 帐户,并将带有病毒的 eslint-scope 和 eslint-config-eslint 软件包发布到 NPM 注册表中。带有恶意病毒的软件包在安装时,计算机会自动下载并执行 pastebin.com 代码,然后将含有 NPM 访问令牌的.npmrc 文件内容发送给攻击者。

事件的起因是由于帐户遭到入侵的维护者在其他几个网站上设置的密码和 npm 上的一样,并且没有在他们的 npm 帐户上启用双重身份验证。

恶意程序包包含在 eslint-scope@3.7.2 和 eslint-config-eslint@5.0.2 中,目前,它们都已经从 npm 中被移除出去了,pastebin.com 在这些包中的链接也已被删除。npm 也已撤销在 2018-07-12 12:30 UTC 之前发出的所有访问令牌。因此,受此攻击影响的所有访问令牌都不再可用。

Udacity也弃用React Native了:不久之前,Airbnb 团队刚刚宣布放弃使用 React Native,才过了不到一个月,在线教育机构Udacity 移动团队最近也宣布从 App 中移除了使用 React Native 开发的最后一批功能。而 6 月中旬,Facebook 宣布将大规模重构 RN,这一系列的事件,让不少正在使用 React Native 的开发者瑟瑟发抖,陷入了恐慌之中。

在本文章中,Udacity 团队将告诉大家他们使用 React Native 的历程以及放弃他们的原因,也希望给一些开发者一些参考和启发,看自己是否适合使用 React Native。

开发教程

步步为营,掌握基础技能

如何用TypeScript构建更好的React应用程序:将TypeScript和React一同使用,会大大提高开发体验。

TypeScript允许你以type接口的形式定义复杂的定义。当你要在应用程序中使用复杂的type(例如包含其他属性的对象)时,会进行严格的审查,减少了可能产生的错误。

在这篇文章中,作者将向您展示如何使用TypeScript改进React应用程序的代码。

如何使用React 16中的错误边界:React 16于2017年9月26日正式发布,在React 16中,大家就能使用错误边界这一新功能,错误边界是一种React组件。它及其子组件形成一个树型结构,能捕获JavaScript中所有位置的错误,记录下错误,并且还能显示一个后备界面,避免让用户直接看到组件树的崩溃信息。本文作者就告诉你如何开始使用错误边界。

JavaScript代码清理:如何重构并使用类:在较小的React项目中,将所有组件方法保留在组件本身中效果很好。在中型项目中,您可能会发现自己希望从组件中获取这些方法并成为“帮手”。在本文中,作者将向您展示如何使用类(而不是导出单个函数和变量)来组织代码。

工程实践

立足实践,提示实际水平

京东APP的UI自动化测试框架及平台化探索:UI自动化测试,即通过模拟手动操作用户UI界面的方式,以代码方式实现自动操作和验证的一种自动化测试手段。在十年前,那时候还是PC web的天下,以Selenium驱动web UI的自动化测试还是主流。五年前,当测试人员逐渐熟悉了Selenium API编写UI自动化用例时,互联网的主战场已经从web端逐渐过渡到了app端。现在,App在UI自动化方面的框架已经比较成熟,例如appium、uiautomator、espresso、robotium等。

框架如何避免或降低UI的问题呢?作者认为:

Android自动化页面测速在美团的实践:随着移动互联网的快速发展,移动应用越来越注重用户体验。其中很重要的一项内容就是页面的加载速度。如果发生冷启动时间过长、页面渲染时间过长、网络请求过慢等现象,就会直接影响到用户的体验,所以,如何监控整个项目的加载速度就成为重要挑战。

随着美团业务的快速迭代,有越来越多的新页面、越来越多的业务逻辑、越来越多的代码改动,这些不确定性会使他们测速部分的代码耦合进业务逻辑,并且需要手动维护,进而增加了成本和风险。于是通过借鉴先前的一些方案,分析其存在的问题并结合自身特性,他们实现了一套无需业务代码侵入的自动化页面测速插件,本文将对其原理做一些解读和分析。

阮一峰webpack教程(Demo集合):Webpack是用于构建Javascript模块脚本来给浏览器使用的前端工具。它和Browserify很像,但是能做更多的事。本文的内容包括:安装使用指南、入口文件、多个入口文件、Babel-loader、CSS-loader、Image loader、插件系统、如何加载第三方插件、环境变量、代码分离等15个demo。

深度阅读

深度思考,升华开发智慧

Vue手册:全方位了解Vue:Vue可以说是今年最火的前端框架了,由于它简单性能好,正逐渐受到很多开发者的青睐。本篇文章介绍了Vue的基本特点、如何构建Vue应用程序、深入了解Vue CLI、Vue组件、使用Vuex管理状态、使用Vue Router处理URL等20多个内容,Vue的初级开发者可点进原文链接自取。

Node前端指南:本指南主要面向那些了解JavaScript但尚未熟悉Node的前端开发者。本文包括Node版本选择、回调风格、模块系统、环境变量等10项内容。

开源项目

乐于分享,共推前端发展

face-api.js:face-api.js是用在tensorflow.js核心API(tensorflow / tfjs-core)之上实现的浏览器中的面部检测和面部识别的JavaScript API。

open-source-mac-os-apps:open-source-mac-os-apps集齐了macOS开源应用程序。

lynx-native:Lynx是一个使用Javascript来构建Android和iOS本地应用的框架。Lynx直接使用平台UI来进行渲染,同时可以使用CSS进行排版。

前端之巅

「前端之巅」是 InfoQ 旗下关注大前端技术的垂直社群。紧跟时代潮流,共享一线技术,欢迎关注。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注