Kasus penggunaannya sederhana: Saya hanya ingin mengekspor objek dengan nama seperti yang diimpor.
sebagai contoh:
import React from 'react';
export React;
tapi ini tidak berhasil. Saya harus menulis:
import React from 'react';
export const React = React;
Tapi ini aneh. Apa cara yang tepat untuk melakukan ini?
DIPERBARUI :
Terima kasih atas bantuan dan referensi. Saya telah memecahkan masalah saya dengan banyak petunjuk. Saya ingin berbagi beberapa kasus umum untuk saya dan solusinya.
ekspor impor
import d, {obj} from '...';
export {obj, d};
export {obj as name1, d as name2};
ekspor ulang semua impor yang disebutkan
export * from '...';
export * as name1 from '...';
ekspor kembali beberapa impor bernama
export {a, b as name1} from '...';
ekspor ulang impor default sebagai ekspor default
export {default} from '...';
ekspor kembali impor default sebagai ekspor bernama
export {default as name1} from '...';
import
export
ecmascript-6
Yao Zhao
sumber
sumber
export {React}
tetapi sekali lagi, jika Anda perlu Bereaksi di suatu tempat, Anda hanya perlu mengimpornya di sana.export * as name1 from '...';
ini tidak berfungsi untuk saya (menggunakan webpack 2). Ada ide?Jawaban:
Saya sering melakukan hal berikut dalam file index.js yang menyusun beberapa file:
Entri blog ini memberikan beberapa contoh tambahan yang bagus.
Catatan penting
Anda harus mengetahui aturan eslint ini ketika mengakses impor yang diekspor ini. Pada dasarnya, di file lain, Anda tidak boleh:
Anda harus melakukan ini:
sumber
Anda dapat mengekspor file yang diimpor dengan struktur seperti itu
sumber
Untuk kasus penggunaan saya, saya secara eksplisit memerlukan semacam pernyataan impor eksplisit sehingga babel dapat mengubah kode es7 saya ke es5.
Berikut ini menghasilkan kesalahan
You gave us a visitor for the node type "ForAwaitStatement" but it's not a valid type
:Solusi saya adalah mengimpor modul secara eksplisit dengan menggunakan
require()
:sumber
Diberikan
./foo.js
:Maka Anda harus dapat melakukan ini:
Sintaksis kurang lebih mengikuti pola commonjs module.exports, di mana Anda akan melakukan ini:
Lebih banyak di sini:
http://exploringjs.com/es6/ch_modules.html
sumber
Anda harus dapat melakukan
export {React}
dan mengimpornya melaluiimport {React} from ./module
Lihat https://developer.mozilla.org/en/docs/web/javascript/reference/statements/export untuk informasi lebih lanjut.
sumber