ECMAScript modülleri (ESM) daha yeni tarayıcılar için
ESM dağıtımı, ECMAScript modülleri ES6 ile tanıtılan en son tarayıcıları hedefler.
Bu dağıtım, Node.js ortamı dışında çalıştırmak için gerekli polyfill'leri içermektedir ve Node.js sürümü
ile karşılaştırıldığında önemli bir farklılık göstermektedir.
Ek bilgiler ECMAScript modülleri projesi
belgelerinde mevcuttur.
Kullanım
Dosyalar manuel olarak içe aktarılabilir. Herhangi bir dış bağımlılığa ihtiyaç duymazlar ve packages/csv-stringify/dist/esm
klasörü içerisinde yer almaktadırlar.
Modüllerinizi yönetmek ve yüklemek için NPM kullanıyorsanız, örneğin webpack içinde, şu şekilde kullanın:
import {stringify} from 'csv-stringify/browser/esm';
// Veya
import {stringify} from 'csv-stringify/browser/esm/sync';
Vanilla JavaScript
Çalışan bir demo, demo/browser
dizininde mevcuttur.
Express ile dosyaları şu şekilde yayınlayın:
const app = express();
app.use('/lib/stringify/',
express.static(`node_modules/csv-stringify/dist/esm/`));
app.listen(3000);
HTML kodu şöyle görünür:
<script type="module">
import {stringify} from '/lib/stringify/index.js';
stringify(records, options, (err, data) => {
console.info(data)
});
</script>
Senkron API'yi kullanmak isterseniz, şu şekilde kullanın:
<script type="module">
import {stringify} from '/lib/stringify/sync.js';
const data = stringify(records, options);
</script>
Webpack modül paketleyici
Bu dağıtım, webpack sürüm 5 ile uyumludur. Node.js polyfill'leri ile birlikte gelir. Proje deposunda bir çalışan demo mevcuttur.
Modülünüzde, uygun csv-stringify
modülünü içe aktarın:
./stringify.js
:import {stringify} from 'csv-stringify/browser/esm';
./stringify_sync.js
:import {stringify} from 'csv-stringify/browser/esm/sync';
İlgili webpack yapılandırması şöyle görünür:
embed:demo/webpack/webpack.config.js{snippet: "stringify"}