JS 模組化
import_export_module.exports 模組化
參考至
http://www.2ality.com/2014/09/es6-modules-final.html
http://es6.ruanyifeng.com/#docs/module
在webpack中可混用,一起用
ES6 module
//------ lib.js ------
export sqrt = Math.sqrt;
//------ main.js ------
import sqrt from 'lib';想一次import所有export過的東西
import * as lib from 'lib';舉例:
export function addTodo(text) {
return {
type: 'ADD_TODO',
text
};
}
export function removeTodo(id) {
return {
type: 'REMOVE_TODO',
id
};
}傳回的東西是一個物件
CommonJS
使用import的格式
但為什麼react在webpack可以用?
(因為react是用 module.exports 進行輸出)
結論
1.
or
配上
2.
or
配上
使用require
有關react引入jsx
使用commonjs的寫法require時
其中是指向
也就是指向命名的var跟你原本元件的名稱沒關係
所以如果你想在一個jsx寫入多個元件會較麻煩,需要使用多個jsx檔案每個寫一個元件,再全部require到一個主jsx內
所以推薦使用ES6的import,下面hllo直接指到目標檔案的元件名稱,所以可以在一個jsx檔案內放多個元件
原因是ES6的import可以使用{}如果使用會直接引入檔案內的object,如果沒用則是引入export default 或module.exports的檔案
或是使用ES6 的exports 記得 require後加上 ".屬性"
Last updated
Was this helpful?