Alternative __dirname di module es6
Jika kamu seorang programmer Javascript dan sudah mulai menggunakan modul es6 maka kamu perlu tips singkat ini untuk dapat menggunakan variable __dirname di scriptmu.
Karena pada modul es6 variable __dirname tidak dapat diakses.
Bagaimana mengetahui bahwa aplikasi kita sudah menggunakan modul es6?. hal ini bisa dilihat dari cara import sebuah modul, sebelum modul es6 cara import modul menggunakan syntax
require. Contoh:
const app = require('express')sedangkan pada modul es6 sudah menggunakan syntax import
import app from 'express'Hal ini ditandai dengan adanya properti konfig dengan nama type dan bernilai module pada file package.json. Nah jika sudah menggunakan modul es6 maka variable __dirname tidak dapat dipakai lagi.
Untuk itu berikut ini ada caranya membuat semisal __dirname, kamu cukup salin saja kode berikut dan variable __dirname sudah bisa digunakan.
import path, { dirname } from 'path'
import { fileURLToPath } from 'url'
const __dirname = dirname(fileURLToPath(import.meta.url))semoga bermanfaat.