dev

開發者。

dev

Angular 小贴士

记录一些 Angular v2+ 的贴士。常遇到的问题。 自我吐槽:Rxjs 学习曲线真陡啊。 以下内容未必对,参考参考。 001 - Observable、async pipe、rxjs 这段讲讲 rxjs 和 async pipe 分享 observable https://gist.github.com/DrakeLeung/ecbcedab8534d4486a888ef777a76140#share 模版里面用了最新的 async pipe。 myData | async。 async pipe 好处:它自动帮你订阅 Observable,还有 Component 在销毁时(onDestory)

dev

如何重启密码认证的 Redis

这篇文章的命令适合 debian/ubuntu 用户 如果你的 redis 有使用 AUTH(密码、加密),你会知道下面的命令是不行的 $ sudo service redis-server restart 我是升级 redis 时才发现这个“问题”的。不知道是不是一件好事 😂。 大家应该知道 Redis 的密码是明文写在 redis.conf 的文件里,正确来说是 requirepass 这个配置。(离题……) 正确重启方法 用开 AUTH 的 redis 重启方法只有一个。登陆 redis,在 redis-cli 里关掉它。然后再启动。 $ redis-cli

dev

Hugo

我目前最喜欢的静态网站生成器。静态网又快又安全。支持 sitemap、RSS 生成。 官网:https://gohugo.io/ 内容是 Markdown 格式,再加一点点参数(TOML、YAML 格式)。 Hugo 也有很多工具,可以帮助你从其他平台转换过来。 🆓 工具推荐:在 Mac 平台可以用 MacDown.app 这个免费、支持 Markdown 格式的文字编辑器。 懊恼的地方 🤔 1、写一个主题。本身不带任何主题。Hugo 也提供了有很多免费的主题可以下载。你也可以从 WP 那边找找灵感,自己写一个。主题有很多变量,任你发挥。 2、本身不支持

dev

我收藏的 Visual Studio Code 插件

收藏一些 VSCode 插件,僅提供參考 主要的插件 Editor Config for VS Code JavaScript (ES6) code snippets Linting ESLint Prettier - 無腦格式代碼,用 eslint 就停用這個 SublimeText 鍵盤佈局 change-case Sublime Text 的改變字母大小寫 Import Cost - 顯示加載後的代碼大少 Polacode - 漂亮的代碼截圖(fork 版,原版好似很久沒更新了) Bracket Pair Colorizer - 對括號符號提供很吊的高亮代碼 Git:

dev

Angular CLI

Angular CLI 类似 ember-cli,yeoman 的 app 模板生成器。自己配置整个开发 build tool 比较繁琐,因为 typescript 需要额外配置文件,选 gulp、systemjs、webpack,又要配置。又要写跑 test 的配置,karma、protractor……太麻烦,弄完也要半天的时间。 用 Angular CLI 通通自动化这些繁琐过程。跑 2-3 命令就可以进行开发了 安装 Angular CLI $ npm install -g @angular/cli 基本命令 $ ng

dev

Mongodb 密碼驗證

MongoDB 是 NoSQL 的資料庫。沒密碼認證的 database,總是不太好。我們給它添加一點點安全,降低隨便登陸,禁止隨便查看任何資料庫。 流程 修改 mongo 配置文件,關閉 auth 認證選項 重啓 mongodb 運行 mongo CLI,添加管理員用戶 再配置 mongodb.conf 開啓 auth 選項 添加 “讀寫” 權限的用戶 ⚠️ 寫的時候使用舊的版本 2.6.x,3.x.x 打后的版本配置文件是用 YAML 格式,詳細請看官網。 01.

dev

电子邮件别名

不知道大家有没有这个情况,想用一个不是私人的电子邮件发一些邮件,但是又不想开多个账号(管理密码麻烦嘛~)。又不知道大家有没有真正用上一些电邮服务已经提供的功能呢? 电子邮件别名是可向收件人隐匿真实电子邮件地址的邮件地址。您可以创建别名,用于在线商店购物、注册邮件列表和在线注册,而用您的真实电子邮件地址与家人和朋友往来。通过这种方式,别名可帮助您更好地管理接收的电子邮件,并监控垃圾邮件的来源。 [来源] 例如 你的电邮是 anderson@example.com 你可以创建一个来管理社交媒体账号 anderson+wechat@example.com anderson+sina@example.com anderson+weibo@example.com 创建一个管理在线购物的账号 anderson+shop@example.com 如此类推,又可以帮家里长者(老爸老妈又不懂电脑)。 如果允许,尽量创建多个。 『别名』不是别人账号,

dev

Diceware

Diceware 生成有意義又易記的密碼。 官網:http://world.std.com/~reinhold/diceware.html 密碼管理器(例如 KeePass)通常都會生成下面一串隨機字母數字: Zer4syns3fRngswVk3xz WnITe9AmAM7c7cphfEa1 3iVELPTAlSip1f5TSOiw zeWJoPKThVP2XIo6PKu9 sfUjYB8jwa7o0ZlyBnTA cHdH0vFZp05HCA3hOdm9 毫無意義的亂碼 人腦當然記不起來。所以我們用密碼管理器來記各式各樣的超級複雜的密碼。 問題是用來打開密碼管理器的 Master Password 主人密碼總不能用這樣複雜的密碼吧!?你可以抄下來。每次打開密碼管理器都要輸入這麽長又難記才能解鎖。 Diceware Diceware 是通過掷骰子來決定隨機密碼。方法就是,掷六次,得出五個數字之後(例如 13621),這五位數字就是密碼的第一個單詞。 Diceware 的單詞表 這是 Diceword 單詞表其中的一段單詞: 13621

dev

Mac 开发工具

我主要是在 Mac 平台写 code,这篇文章就记下我用的 web 开发工具。 Text Editor / 文本编辑器 目前主要使用 VS Code。 Visual Studio Code (微软产品,免费开源,暂时还差第三方插件功能 v0.10.1 版本开始支持第三方插件) 内置了一些插件:emmet,linter 等等,原生支持 typescript 语法。 我用什么插件,请看这篇文章我收藏的 Visual Studio Code 插件 Sublime Text v3 文本编辑器性能来讲,Sublime 独霸第一。其他提名有 Github

dev

SwipeRefreshLayout + ListView

Android Support Library v4 就有谷歌自己的拉下來重刷的布局:SwipeRefreshLayout Android Support Library:https://developer.android.com/tools/support-library/index.html 不過,配合 ListView 一起使用就要用一個小方法來 fix 一個 bug。默認的 ListView 無論在不在頂部位置時會都會讓 SwipeRefreshLayout 的往下拉的手势重蓋了。 示意圖: 綠色框 = ListView 藍色箭頭 = ListView 頂部位置 橙色箭頭 = SwipeRefreshLayout 容器位置 XML 布局文件大概這樣: <android.support.v4.

dev

Realtime Chat - Part II

实时聊天室之下篇 我們就寫個 app 簡單的寫信息推送到所有用戶(包括自己也看到) Project 架构 . ├── app.js ├── node_modules ├── package.json └── index.html 这个 Project 的文件在Gist:https://gist.github.com/stretchgz/26274e15499077bbce90 单独客户端 -> 服务器 -> 所有的客户端 游览器的 form 发信息,通过 socket 传到服务器,服务器再广播到所有连接的客户端。 Server ├── A ├── B ├── C └── D 當

dev

EXIM4 Unrouteable address 问题

如果你有一个域名使用 Google Apps 來收发邮件。EXIM4 用这个 Gapp 的电邮只来发 email,我遇到了有一个白痴问题。VPS 的 hostname 不能用这个域名,不然,你会遇到 xxx is undeliverable: Unrouteable address 的错误。 EXIM 路由测试: $ exim -bt abc@example.com 问题 你的域名是 example.com。 VPS 的 hostname 跟域名一模一样 example.com。 你有一个用户叫做 a,你尝试发到 a@example.