عبد النور محمد نشر 14 أغسطس 2021 أرسل تقرير نشر 14 أغسطس 2021 أنا أبحث عن نصيحة حول كيفية بدء fastify-cli مع fastify-nextjs لقد حاولت إضافة رمز بسيط إلى المكان المقترح ، لكنه لا يعمل. const path = require('path'); const AutoLoad = require('fastify-autoload'); module.exports = function (fastify, opts, next) { fastify.register(require('fastify-nextjs')).after(() => { fastify.next('/hello'); }); fastify.register(AutoLoad, { dir: path.join(__dirname, 'plugins'), options: Object.assign({}, opts), }); fastify.register(AutoLoad, { dir: path.join(__dirname, 'services'), options: Object.assign({}, opts), }); next(); }; 1 اقتباس
0 عبدالله عبدالرحمن11 نشر 14 أغسطس 2021 أرسل تقرير نشر 14 أغسطس 2021 أولاً قم بتثبيت fastify-cli npm i fastify-cli يمكنك ايضاً تثبيتها عالمياً بإضافة g- ثم قم بإضافة السطور التالية الى package.json { "scripts": { "start": "fastify start server.js" } } وقم بإنشاء ملف الخادم server.js وإضافة الكود الآتي // server.js 'use strict' module.exports = async function (fastify, opts) { fastify.get('/', async (request, reply) => { return { hello: 'world' } }) } ومن ثم قم بتشغيل الخادم ب: npm start اقتباس
0 Salah Eddin Beriani2 نشر 15 أغسطس 2021 أرسل تقرير نشر 15 أغسطس 2021 نظرًا لأن Next.js يحتاج إلى بعض الوقت ليكون جاهزًا عند التشغيل الأول ، يجب أن تعلن عن مساراتك داخل callback ، بعد تسجيل المكون الإضافي. سيعرض المكون الإضافي واجهة برمجة التطبيقات التالية في Fastify والتي ستتعامل مع العرض نيابة عنك. const fastify = require('fastify')() fastify .register(require('fastify-nextjs')) .after(() => { fastify.next('/hello') }) fastify.listen(3000, err => { if (err) throw err console.log('Server listening on http://localhost:3000') }) إذا كنت بحاجة إلى التعامل مع جزء العرض بنفسك ، فما عليك سوى تمرير callback إلى next fastify.next('/hello', (app, req, reply) => { // your code // `app` is the Next instance app.render(req.raw, reply.raw, '/hello', req.query, {}) }) إذا كان لديك معالجة مسبقة مخصصة لطلبات _next / * ، فيمكنك منع هذا المعالجة باستخدام noServeAssets: الخاصية true لخيارات المكون الإضافي fastify .register(require('fastify-nextjs'), { noServeAssets: true }) .after(() => { fastify.next(`${process.env.BASE_PATH || ''}/_next/*`, (app, req, reply) => { // your code app.getRequestHandler()(req.raw, reply.raw).then(() => { reply.sent = true }) }) }) اقتباس
السؤال
عبد النور محمد
أنا أبحث عن نصيحة حول كيفية بدء fastify-cli مع fastify-nextjs
لقد حاولت إضافة رمز بسيط إلى المكان المقترح ، لكنه لا يعمل.
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.