TypeScript 高(zhuāng)级(bī)的用法Partial、Required、Readonly……

2021-09-10
阅读 4 分钟
4.2k
如何让一个类的属性全部可选?比如我有下面这样一个类型: {代码...} User 类型要求所有属性都必须有值,所以: {代码...} 是不可行的,会提示: {代码...} 如何让它可行?使用 Partial 即可: {代码...} Partial 内置内型的作用就是让一个已定义了的类型的所有属性变得可选,具体实现如下: {代码...} 如何让一个类型的...
封面图

来一个老生常谈的话题,Javascript 中,数组如何去重?

2019-08-22
阅读 3 分钟
3.1k
关于如何去除一个给定数组中的重复项,应该是 Javascript 面试中最常见的一个问题了,最常见的方式有三种:Set、Array.prototype.filter 以及 Array.prototype.reduce,对于只有简单数据的数组来讲,我最喜欢 Set,没别的,就是写起来简单。

在 React 应用中使用 Hooks 与 Context 替代 Redux 状态管理

2019-08-21
阅读 6 分钟
3.1k
React Hooks 在 2018 年年底就已经公布了,正式发布是在 2019 年 5 月,关于它到底能做什么用,并不在本文的探讨范围之内,本文旨在摸索,如何基于 Hooks 以及 Context,实现多组件的状态共享,完成一个精简版的 Redux。

setTimeout 或者 setInterval,关于 Javascript 计时器:你需要知道的一切都在这里

2019-08-21
阅读 7 分钟
6.1k
先来回答一下下面这个问题:对于 setTimeout(function() { console.log('timeout') }, 1000) 这一行代码,你从哪里可以找到 setTimeout 的源代码(同样的问题还会是你从哪里可以看到 setInterval 的源代码)?

积极使用解构赋值以及箭头函数提升 Javascript 表现力

2019-08-21
阅读 4 分钟
2k
不管上面哪种实现方式,我们都使用的 const,这表示这些被定义的变量不允许再被赋值,我们推荐 在编写 Javascript 代码时,尽可能的使用 const,除非这个变量确实需要被多次赋值,比如,年龄是可以增长的:

微信小程序 webview 与 h5 通过 postMessage 实现实时通讯的实现

2019-08-20
阅读 8 分钟
18.8k
在做 React Native 应用时,如果需要在 App 里面内嵌 H5 页面,那么 H5 与 App 之间可以通过 Webview 的 PostMessage 功能实现实时的通讯,但是在小程序里面,虽然也提供了一个 webview 组件,但是,在进行 postMessage 通讯时,官方文档里面给出了一条很变态的说明:

在 iOS 与 Android 上实现 React Native 应用深度链接,使得应用可以通过 URL 打开到指定页面

2019-08-18
阅读 9 分钟
3.8k
我们生活在一个万物兼可分享的年代,而分享的过程,几乎最终都会分享某一个链接,那么,作为开发者,最常遇到的问题中应该包括如何通过一个URL地址快速的打开App,并导航至特定的页面。

为什么 ['1', '7', '11'].map(parseInt) 的结果是 [1, NaN, 3]?

2019-08-18
阅读 4 分钟
3.6k
Javascript 总是以超自然的方式执行我们的代码,这是一件很神奇的事情,如果不信的话,思考一下 ['1', '7', '11'].map(parseInt) 的结果是什么?你以为会是 [1, 7, 11] 吗?我都这么问了,那肯定不是:

JSON Web Token

2019-08-11
阅读 5 分钟
2k
自己的一句话理解:JSON Web Token 并不是一种认证方式,他只是认证信息的载体。 基于自己的理解,谈谈 JSON Web Token 的一些事儿。 Session 认证 用户向服务器A发送用户名和密码 服务器验证通过后,在当前会话里保存相关数据,比如登录时间、过期时间,用户角色等,并生成一个 session_id 服务器响应用户登录时,将 se...

使用 Electrode OTA Server 创建私有 Code Push 服务

2019-06-12
阅读 9 分钟
3.1k
一直用着 Microsoft 的 AppCenter.ms 服务都不错,功能强大,但是最近总是抽风,没办法,只能自己部署私有 Code Push Server了,如果直接搜索 Code Push Server,一般得到的结果都是 [链接] 这个,我安装过,不过并没有实现去测试,因为发现它并没有完美的实现 Code Push 的逻辑,在各种坛里面找了好几天之后,终于发现...

2019 最新 React-Native/TypeScript/Redux/Saga 实践

2019-05-31
阅读 1 分钟
3.2k
最近研究 React Native、Redux Saga 以及 TypeScript 相关的内容,整理成了一个 React Native Template,可以直接使用下面的命令创建一个新的应用:

基于 TypeScript 开发 NPM 模块

2019-05-29
阅读 8 分钟
3.1k
初始化 NPM 项目 {代码...} 添加开发基础包 添加 TypeScript {代码...} 添加 Jest 测试工具 {代码...} 添加 @types/node {代码...} 初始化 TypeScript 配置 {代码...} 这会在你的项目根目录新建一个 tsconfig.json 文件 现在的目录结构如下: {代码...} 文件解析 tsconfig.json 这是 TypeScript 的配置文件,默认仅启用...

使用 TypeScript 开发 HapiJS 应用

2019-05-21
阅读 3 分钟
4.9k
要在开发中使用 TypeScrip,同时至少需要有一个工具,可以一直监听项目文件的变更,并实时的将变更更新至启动的服务中,我选择使用 Nodemon,首先添加以下几个开发依赖

JavaScript 编码规范

2019-05-21
阅读 38 分钟
5.2k
类型 基本类型 你可以直接获取到基本类型的值 string number boolean null undefined symbol {代码...} 注意:Symbols 不能被完整的 polyfill,所以,在不支持 Symbols 的环境下中,不应该使用 symbol 类型。 复杂类型 复杂类型赋值就是获取到他的引用的值,相当于引用传递 object array function {代码...} 参考 永远都...

JavaScript 中的 new 到底干了什么,跟原型链又有一些什么联系?

2019-04-18
阅读 6 分钟
2.6k
原文:[链接] 如果按面向对象的思路去讲 JavaScript 的 new,还是很难去理解,我们可以从另一个方向去理解一下它。 你这些人类 我是一名程序员,也是一个人,我可能: 有一个响亮亮的名称 在某一天出生 是个男人 我能行走 我还能跑步 还能跳跃 能说话 我还能写代码 那么,在 JavaScript 中,我们可能像下面这样表达我: ...

Flutter 插件开发:以微信SDK为例

2018-12-20
阅读 10 分钟
9.9k
就像 React Native 一样,在 Flutter 应用中,如果需要调用第三方库的方法或者有一些功能需要使用原生的开发来提供,使用 Flutter Plugin 是一种不错的方式,它本质上就是一个 Dart Package,但与其它的 package 不同点在于,Flutter 插件中一般都存在两个特殊的文件夹:android 与 ios,如果需要编写Java、Kotlin或者 O...

基于 Redux + Redux Persist 进行状态管理的 Flutter 应用示例

2018-12-17
阅读 9 分钟
5.8k
好久没在 SegmentFault 写东西,唉,也不知道 是忙还是懒,以后有时间 再慢慢写起来吧,最近开始学点新东西,有的写了,个人博客跟这里同步。

Seneca :NodeJS 微服务框架入门指南

2017-02-27
阅读 26 分钟
31.2k
Seneca 是一个能让您快速构建基于消息的微服务系统的工具集,你不需要知道各种服务本身被部署在何处,不需要知道具体有多少服务存在,也不需要知道他们具体做什么,任何你业务逻辑之外的服务(如数据库、缓存或者第三方集成等)都被隐藏在微服务之后。

一个让我很不爽的外包项目——奔驰Smart2015新官网

2015-08-02
阅读 1 分钟
5.4k
七月份的下半个月,有幸做了奔驰 Smart 2015年新官网,包括手机端和PC端的宣传页,地址: PC端 手机端 这里,为了证明这个是一个事实,我还特意的留存了两张截图: 这里只想说明这么几个问题: 这东西确实是我做了,而且是那种创意95天,开发两天,三天测试,100天的时候就要上线的; 奥美负责创意,把项目外包,结果就...

最佳(也许)实践:开始用Cordova + Ionic + AngularJS 开发你的 App

2015-07-02
阅读 3 分钟
29.3k
本文是一篇关于我本人在使用 Cordova + Ionic 以及 AngularJS 开发移动App的过程中的经验的总结,它不是一篇基础入门教程,而是和大家探讨一下关于如何更好的使用这些技术开发一个更好的App,文章会每天抽一点时间完成,如果您有什么问题或者想与我交流的经验,欢迎随时在本文下方评论或者邮件给我:54778899 [at] qq.com。

花了十天时间做了一个App,取名一麻贷,想着一麻袋一麻袋的放款,但是……

2015-06-29
阅读 12 分钟
11.8k
6月14号,和另外两个同事商量着不能再像最近这几个月这样了,似乎每一个公司的产品经理与码农们都是死对头,我也没有逃出这个怪圈,每天在对产品的“精雕细琢”中,让我对产品越发的反感,不经意间,看了看自己的 Git Commits List,好长啊,每天都有好多,然后就想着看看自己的干了些什么,突然之间,发现这就是一个循环...

Google 推出的 Java 编码规范

2015-05-13
阅读 11 分钟
24.3k
与其它的编程风格指南一样,这里所讨论的不仅仅是编码格式美不美观的问题, 同时也讨论一些约定及编码标准。然而,这份文档主要侧重于我们所普遍遵循的规则, 对于那些不是明确强制要求的,我们尽量避免提供意见。

CentOS 7 安装 Gitlab

2015-05-05
阅读 9 分钟
32.8k
安装基本系统与依赖包 安装 Gitlab 依赖的工具 {代码...} 安装 Redis 访问 [链接],下载 Redis 源代码。 {代码...} 若在编译过程中出错,则可以执行下面的命令: {代码...} 安装: {代码...} 配置 创建 /etc/init.d/redis 并使用下面的代码作为启动脚本。 添加如下内容: {代码...} 保存后,添加可执行权限: {代码...} ...

CSS 规范

2015-04-27
阅读 5 分钟
4k
更新时间:2015年4月25日 版本:2015.04.25.00 修订:潘韬 历史修订 2015-04-25:第一新修订,潘韬 规范内容 语法 用两个空格来代替制表符tab这是唯一能保证在所有环境下获得一致展现的方法。 为选择器分组时,将单独的选择器单独放在一行。 为了代码的易读性,在每个声明块的左花括号前添加一个空格。声明块的右花括号...

JavaScript 编写规范

2015-04-26
阅读 13 分钟
6.7k
若您对本文档中任何内容有不明白的,或者感觉不合行规的,请您按以下格式向我邮件说明,同时也欢迎任何人参与讨论,共同完善本文档。本文档中很多也是根据我自己现在的公司需求来定的。

HTML项目代码编写规范

2015-04-25
阅读 5 分钟
5.2k
若您对本文档中任何内容有不明白的,或者感觉不合行规的,请您按以下格式向我邮件说明,同时也欢迎任何人参与讨论,共同完善本文档。本文档中很多也是根据我自己现在的公司需求来定的。

MongoDB 基础知识

2015-04-21
阅读 11 分钟
21.2k
基本概念 文档是 MongoDB 中数据的基本单元,非常类似于关系型数据库中的行,但更具有表现力; 集合 Collection 可以看作是一个动态模式(Dynamic Schema)的表; MongoDB 的一个实例可以拥有多个相互独立的数据库 ( Database),每一个数据库都拥有自己的集合; 每一个文档都有一个特殊的键 _id ,这个键在文档所属的...

Go语言的标识符、关键字、字面量、类型

2015-04-18
阅读 3 分钟
10.3k
一直在 Segment Fault 上面实行自己的拿来主义,但其实我是一直很乐意分享的人,而且特别喜欢写,以前一直都是在自己的博客里面写,但是没啥人看,也形成不了交流,所以,申请在 Segment Fault 上面开个专栏,以后还忘大家多多指教,这篇文章只是想试试 Segment Fault的编辑器,内容是前几天写的。