اذهب إلى المحتوى

السؤال

نشر

لدي مشروع Vanilla JS بسيط ، مرفق مع webpack.

هذا هو ملف webpack.dev.js الخاص بي:

const path = require('path');
const webpack = require('webpack');

module.exports = {
  mode: 'development',
  devtool: 'eval-source-map',
  output: {
    path: path.resolve('public'),
    filename: 'dist/bundle.js',
  },
  module: {
    rules: [
      {
        test: /\.css$/,
        use: [
          'style-loader',
          'css-loader',
        ],
      },
      {
        test: /\.svg$/,
        use: 'file-loader',
      },
    ],
  },
  plugins: [
    new webpack.EnvironmentPlugin(['CUSTOM_PATH']),
  ],
  devServer: {
    static: './public',
  },
};

هذا هو ملف .env الخاص بي:

PATH=...

عند تشغيل المشروع احصل على 

Uncaught (in promise) ReferenceError: process is not defined

 

Recommended Posts

  • 0
نشر

لحل مشكلة process is not defined يمكن أن نضيف plugin التالية:

 plugins: [

    new webpack.ProvidePlugin({
      process: 'process/browser',
    }),
  ]

ونقوم بتثبيتها كالتالي:

npm install process

كما يمكن استعمال الplugin التالية webpack.DefinePlugin بدل من webpack.EnvironmentPlugin :

webpack.config.js

module.exports = {
plugins: [
    new webpack.DefinePlugin({
      'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV),
      'process.env.MY_ENV': JSON.stringify(process.env.MY_ENV),
      ... and so on ...
    })
],
}

وتأكد من تضمين حزمة dotenv 

const dotenv = require('dotenv').config({ path: __dirname + '/.env' })

في أول ملف webpack.config.js

لتثبيتها:

npm i dotenv

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...