Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mengimport Semua Modul dari Direktori dalam JavaScript?

Bagaimana untuk Mengimport Semua Modul dari Direktori dalam JavaScript?

Susan Sarandon
Susan Sarandonasal
2024-12-02 21:32:12128semak imbas

How to Import All Modules from a Directory in JavaScript?

Mengimport Modul daripada Semua Fail dalam Direktori Menggunakan Wildcard

Apabila bekerja dengan ES6, anda boleh mengimport berbilang eksport daripada satu fail menggunakan sintaks berikut:

import {ThingA, ThingB, ThingC} from 'lib/things';

Walau bagaimanapun, untuk tujuan organisasi, ia mungkin lebih baik untuk mempunyai satu modul setiap fail. Ini membawa kepada import yang menyerupai yang berikut:

import ThingA from 'lib/things/ThingA';
import ThingB from 'lib/things/ThingB';
import ThingC from 'lib/things/ThingC';

Senario yang ideal ialah mengimport modul daripada semua fail dalam direktori menggunakan kad bebas, seperti:

import {ThingA, ThingB, ThingC} from 'lib/things/*';

Ini akan mematuhi kepada konvensyen yang mempunyai setiap fail mengandungi eksport lalai tunggal dan menamakannya sama dengannya fail.

Kebolehlaksanaan Kad Liar

Malangnya, pengimportan modul menggunakan kad bebas pada masa ini tidak disokong dalam JavaScript. Peleraian nama modul dikendalikan oleh pemuat modul dan mungkin terdapat pelaksanaan khusus yang menyokong fungsi ini.

Penyelesaian Alternatif

Jika tiada sokongan kad bebas, anda boleh buat "fail modul" perantaraan di lib/things/index.js yang mengandungi berikut:

export * from 'ThingA';
export * from 'ThingB';
export * from 'ThingC';

Ini membolehkan anda mengimport modul yang diingini menggunakan satu pernyataan:

import {ThingA, ThingB, ThingC} from 'lib/things';

Atas ialah kandungan terperinci Bagaimana untuk Mengimport Semua Modul dari Direktori dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn