الفرق بين المراجعتين لصفحة: «Next.js/customizing babel config»

من موسوعة حسوب
لا ملخص تعديل
ط مراجعة
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:التهيئة المخصصة للمحلل Babel}}</noinclude>
<noinclude>{{DISPLAYTITLE:تخصيص ضبط Babel في Next.js}}</noinclude>
تضيف Next.js مجموعة الإعدادات <code>next/babel</code> إلى تطبيقك، وتحتوي هذه المجموعة على كل ما هو مطلوب لتصريف تطبيقات React وشيفرة الواجهة الخلفية. لكن إن أردت توسيع إعدادات Babel الافتراضية فهذا ممكن.
تضيف Next.js مجموعة الإعدادات <code>next/babel</code> إلى تطبيقك، وتحتوي هذه المجموعة على كل ما هو مطلوب لتصريف تطبيقات React وشيفرة الواجهة الخلفية. لكن إن أردت توسيع إعدادات Babel الافتراضية فهذا ممكن.


ولكي تبدأ العمل، ما عليك سوى تعريف ملف <code>babelrc.</code> (أو <code>babel.config.js</code>) في أعلى شجرة تطبيقك. فإن وجدت Next.js هذا الملف، سيُعدُّ مصدر المعلومات، وينبغي أن يُعرِّف المجموعة <code>next/babel</code>.
ولكي تفعل ذلك، ما عليك سوى تعريف ملف <code>babelrc.</code> (أو <code>babel.config.js</code>) في أعلى شجرة تطبيقك. فإن وجدت Next.js هذا الملف، سيُعدُّ مصدر المعلومات، وينبغي أن يُعرِّف المجموعة <code>next/babel</code>.


إليك مثالًا عن ملف <code>babelrc.</code>:<syntaxhighlight lang="json">
إليك مثالًا عن ملف <code>babelrc.</code>:<syntaxhighlight lang="json">
سطر 29: سطر 29:
   "plugins": []
   "plugins": []
}
}
</syntaxhighlight>'''ملاحظة''': تستخدم Next.js النسخة الحالية من أجل تصريف الشيفرة من جانب الخادم.
</syntaxhighlight>'''ملاحظة''': تستخدم Next.js النسخة الحالية current من Node.js من أجل تصريف الشيفرة من جانب الخادم.


'''ملاحظة''': يجب أن تبقي قيمة الخيار <code>modules</code> في <code>"preset-env"</code> دائمًا <code>false</code> وإلا ستُعطَّل ميزة فصل الشيفرة في webpack.
'''ملاحظة''': يجب أن تبقي قيمة الخيار <code>modules</code> في <code>"preset-env"</code> دائمًا <code>false</code> وإلا ستُعطَّل ميزة فصل الشيفرة في webpack.
== أمثلة ==
* [https://github.com/vercel/next.js/tree/canary/examples/with-custom-babel-config Customizing babel configuration]


== المصادر ==
== المصادر ==


* الصفحة [https://nextjs.org/docs/advanced-features/customizing-babel-config Customizing babel Config] من توثيق Next.js الرسمي.
* الصفحة [https://nextjs.org/docs/advanced-features/customizing-babel-config Customizing babel Config] من توثيق Next.js الرسمي.

مراجعة 12:15، 18 ديسمبر 2022

تضيف Next.js مجموعة الإعدادات next/babel إلى تطبيقك، وتحتوي هذه المجموعة على كل ما هو مطلوب لتصريف تطبيقات React وشيفرة الواجهة الخلفية. لكن إن أردت توسيع إعدادات Babel الافتراضية فهذا ممكن.

ولكي تفعل ذلك، ما عليك سوى تعريف ملف babelrc. (أو babel.config.js) في أعلى شجرة تطبيقك. فإن وجدت Next.js هذا الملف، سيُعدُّ مصدر المعلومات، وينبغي أن يُعرِّف المجموعة next/babel.

إليك مثالًا عن ملف babelrc.:

{
  "presets": ["next/babel"],
  "plugins": []
}

للاطلاع على مزيد من مجموعات الإعدادات الجزئية الموجودة ضمن next/babel، اطلع على المثال المخصص لتوضيح هذه الفكرة على GitHub. ولإضافة مجموعة إعدادات جزئية أو إضافات دون تهيئتها، اكتب الشفرة التالية:

{
  "presets": ["next/babel"],
  "plugins": ["@babel/plugin-proposal-do-expressions"]
}

لإضافة مجموعة إعدادات جزئية أو إضافات بتهيئة خاصة، اكتب الشفرة التالية ضمن حقل المجموعة الجزئية next/babel كالتالي:

{
  "presets": [
    [
      "next/babel",
      {
        "preset-env": {},
        "transform-runtime": {},
        "styled-jsx": {},
        "class-properties": {}
      }
    ]
  ],
  "plugins": []
}

ملاحظة: تستخدم Next.js النسخة الحالية current من Node.js من أجل تصريف الشيفرة من جانب الخادم.

ملاحظة: يجب أن تبقي قيمة الخيار modules في "preset-env" دائمًا false وإلا ستُعطَّل ميزة فصل الشيفرة في webpack.

أمثلة

المصادر