Create-React-App正常使用下無法更改babel設定
且為了保持產生的bundle.js不會太大
Create-React-App並不會將babel-polyfill全部打開
例如以下這些在IE中將會失敗的Function
Array.includes, String.includes, Object.values
以下簡單介紹3種解決辦法
Deploy react app by create-react-app
Follow this guide to deploy react app to github pages.
React Create App Readme
Do something to let github pages OK with SPA
Github pages does not support SPA routings now, so you have to do followings:
Follow this guide to make SPA OK with github pages
spa github pages
A Simple Higher Order Component example
Simple example
For loading spinner with different Component
Recompose
https://github.com/rafrex/spa-github-pages
A React Library for HOC
Javascript中Composition示範code
當在javascript中需要多重繼承概念時可考慮使用Composition
Table of Contents
隨筆亂記
陸續增加中
javascript是近年來進步非常快的語言
Browser常常趕不上ECMA標準
導致ES6有非常多好用的新功能目前主流Browser都還沒完全支援
即使如此還是建議大家儘量使用ES6的新東西來寫
用以下提到的Polyfilling、Transpiling來做
Node.js 的套件搜尋機制:
當 require 一個套件的時候,Node.js 會搜尋當前目錄的 node_modules 子資料夾和 NODE_PATH 環境變數所設定的目錄。所以套件可以選擇安裝在全域,也就是 NODE_PATH 所指定的目錄,或當前目錄的 node_modules 子資料夾。npm 也因此分成兩種模式:全域模式 (Global Mode) 管理 NODE_PATH 所指定的目錄套件,及本地模式 (Local Mode) 管理當前目錄的 node_modules子資料夾內的套件。
如果安裝 Node.js 時沒有另外設定 prefix 參數,NODE_PATH 應設定為 /usr/local/lib/node_modules
npm 最大的優點可能也是最大的缺點,即透過冗餘安裝來解決套件相依性問題。如果要安裝套件 A 和套件 B,而兩者都相依於套件 C,則 npm 會在套件 A 和套件 B 的 node_modules 資料夾內同時安裝套件 C。換句話說,套件 C 被安裝了兩次。這種設計的好處是不會有相依性問題,但缺點就是同樣的套件會被安裝多次,當有需要編譯的套件被冗餘安裝多次時,更新會變得很緩慢,幸好絕大多數的套件都不需要編譯。
以上轉貼http://www.openfoundry.org/tw/tech-column/8537-npm-node-package-manager
指令
|
|
dependency管理
詳情可見https://docs.npmjs.com/files/package.json
|
|
在安裝package時加上–safe表示安裝的同時自動更新package.json
簡介
可做到node.js的多版本環境切換,類似pyenv
安裝
|
|
bash_profile加上
以上設定會將node安裝在~/.nvm/versions/node/v4.2.2
npm的global library在~/.nvm/versions/node/v4.2.2/lib/node_modules/
指令
|
|