原创 [前端漫談] 一巴掌拍平Git中的各種概念

0x000 導讀 講git的文章很多,但是大部分都是一個套路,講概念,講命令,太多的概念和命令總是讓人有一種稀裏糊塗的感覺,講的很對,但似乎沒能講透,沒有醍醐灌頂的感覺,大概是我的悟性差吧。所以這幾天一直在做各種git的實驗,並且閱讀了一些

原创 [前端漫談] 做一個四則計算器

0x000 概述 近期重新開始學習計算機基礎方面的東西,比如計算機組成原理、網絡原理、編譯原理之類的東西,目前正好在學習編譯原理,開始對這一塊的東西感興趣,但是理論的學習有點枯燥無味,決定換種方式,那就是先實踐、遇到問題嘗試解決,用實踐推動

原创 React入門0x018: 高階函數組件(HOC)

0x000 概述 高階函數組件...還是一個函數,和函數組件不同的是他返回了一個完整的組件...他返回了一個class!!! 0x001 直接上栗子 照常,先寫個App組件,外部傳入一個theme class App extends R

原创 React入門0x017: 函數組件

0x000 概述 函數組件其實就是一個函數,一個render函數。 0x001 栗子 源碼 import React from 'react' import ReactDom from 'react-dom' function App

原创 React入門0x016: 訪問Dom

0x000 概述 不到必要不要在React中訪問Dom,嘗試使用React的思想去解決問題。當然,必要的時候還是可以的,比如某些依賴Dom的組件 0x001 時機 在React中,並不是任何時候都可以訪問Dom的,需要講究時機。因爲Reac

原创 React入門0x015: Portal-如果可以更願意稱爲`容器`

0x001 Portal 先上栗子再說話: class PortalComp extends React.Component { render() { return ( <div>

原创 React入門0x014: Fragment

0x001 引出問題 讓我們先來看一個栗子: class App extends React.Component { render() { return ( <h1></h1>

原创 React入門0x013: Context

0x000 概述 Context就是全局state啦~~ 0x001 問題 先上栗子,我們需要在Topbar中用到theme,但是theme必須從最外層傳入,所以必須從最外層傳入App,再傳入TopBar,這隻傳遞了兩次,但是如果全部組件都

原创 es6基礎0x024:babel簡單使用

0x001 polyfill 我們都知道,js總是一直存在着兼容性問題,雖然其他語言也存在着兼容性問題,比如c++、java,但那種兼容性是新特性在舊版本上的不兼容,js則存在着各種奇形怪哉的不兼容。這其中有着非常複雜的歷史和時代的原因,並

原创 es6基礎0x023:Promise

0x000 概述 Promise是一個異步編程的解決方案,他經常和ajax一起出現,導致很多人以爲Promise是一種新的網絡請求技術,其實不然。Promise是一種思考方式、編程方式。 0x000 栗子 先寫一個栗子 setTimeout

原创 es6基礎0x022:Symbol

0x000 概述 Symbol是es6新的基本數據類型,所以es之後的數據類型如下: 基本數據類型: Boolean Null Undefined Number String Symbol 引用類型 Object 0x001

原创 es6基礎0x021:反射

0x000 概述 反射說起來和上一章節的代理基本一樣,只是使用的方式不同,設計理念也不同。 反射提供了一系列的靜態函數,可以使用Reflect.function_name(...prams)調用,這一系列的方法和代理的處理器對象方法一致 0

原创 es6基礎0x020:代理

0x000 概述 代理嘛,就是請代理人代替自己做某件事,但是和自己不一樣的是代理人可以有自己的行爲,甚至可以做出和預期相違背的行爲。 0x001 栗子 聲明一個普通對象origin,他有一個屬性name let origin={ n

原创 es6基礎0x019:模塊化

0x000 概述 模塊化是一個大型項目的必然趨勢。 0x001 命名導出 可以使用export關鍵字,導出你要導出的東西,可以導出常量、變量、函數、類, // export.js export var var0 = 'var0' //

原创 es6基礎0x018:類、繼承、重寫、超類調用

0x000 概述 es6真正的引入的面相對象的類,以前我們總是通過其他手段來模擬類這種形式,現在終於有了,我有點開心,又有點難過,因爲在我看來,js並不是所謂的面相對象的語言,反而更偏向函數式,原型繼承是他真正的面目。面相對象不過是人們在思