تهيئة وقت التشغيل

تحذير:

لإضافة تهيئة وقت التشغيل إلى تطبيقك، افتح ملف next.config.js وأضف تهيئات publicRuntimeConfig و serverRuntimeConfig:

next.config.js
module.exports = {
  serverRuntimeConfig: {
    // ستكون متاحة فقط على جانب الخادم
    mySecret: 'secret',
    secondSecret: process.env.SECOND_SECRET, // تمرير عبر متغيرات البيئة
  },
  publicRuntimeConfig: {
    // ستكون متاحة على كل من الخادم والعميل
    staticFolder: '/static',
  },
}

ضع أي تهيئة وقت تشغيل خاصة بالخادم فقط تحت serverRuntimeConfig.

أي شيء يمكن الوصول إليه من كود جانب العميل والخادم يجب وضعه تحت publicRuntimeConfig.

أي صفحة تعتمد على publicRuntimeConfig يجب أن تستخدم getInitialProps أو getServerSideProps أو يجب أن يحتوي تطبيقك على تطبيق مخصص مع getInitialProps لعدم استخدام التحسين الثابت التلقائي. لن تكون تهيئة وقت التشغيل متاحة لأي صفحة (أو مكون في صفحة) بدون تقديمها من جانب الخادم.

للوصول إلى تهيئات وقت التشغيل في تطبيقك، استخدم next/config، كما يلي:

import getConfig from 'next/config'
import Image from 'next/image'

// تحتوي فقط على serverRuntimeConfig و publicRuntimeConfig
const { serverRuntimeConfig, publicRuntimeConfig } = getConfig()
// ستكون متاحة فقط على جانب الخادم
console.log(serverRuntimeConfig.mySecret)
// ستكون متاحة على كل من جانب الخادم والعميل
console.log(publicRuntimeConfig.staticFolder)

function MyImage() {
  return (
    <div>
      <Image
        src={`${publicRuntimeConfig.staticFolder}/logo.png`}
        alt="logo"
        layout="fill"
      />
    </div>
  )
}

export default MyImage