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

react rendering من express

السؤال

نشر

احاول انشاء template لكل مشاريعي المستقبلية باستخدام react و express و أريد كل شئ ان يكون على سيرفر واحد فقمت بانشاء تجهيز express يسمح ب تقديم مجلد ال build الخاص ب react على شكل view ولكن بما انهما على سيرفر واحد عانيت من مشكلة routing بين express و react router ولكن قمت بالاجتهاد وحللت المشكلة لكن لا اعرف مدى صحة ما قمت به

const express = require('express');
const mongoose = require('mongoose');
const morgan = require('morgan');
const cors = require('cors');
require('dotenv').config();



const errorController = require('./controllers/errorController');

const { upload } = require('./helpers/upload');

mongoose.set('useFindAndModify', false);

const app = express();

app.use(cors());
app.use(morgan('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));

app.use(express.static(__dirname + '/client/dist'));


app.get('/#/*', function (req, res) {
  res.sendFile(__dirname + '/client/dist/index.html');
});

app.use(errorController);

mongoose
  .connect(process.env.MONGO_URI_DEV, {
    useNewUrlParser: true,
    useUnifiedTopology: true,
  })
  .then(() => {
    app.listen(process.env.PORT, () => {
      console.log('listening ' + process.env.PORT);
    });
  })
  .catch(() => {
    console.log('mongoose connection failed');
  });

قمت ياستخدام hashroute الخاص ب react router وفي كل مرة اصل الى رابط فيه # أرسل ال index.html ارجو اخباري اذا ما كنت ارتكبت خطأ سيعطل مسار العمل في المستقبل 

Recommended Posts

  • 0
نشر

إستعملت نفس الطريقة و لا يوجد بها أي ضرر خصوصا أن الرئاكت يستعمل virtual Dom أي أنه لا يقوم بإرسال الصفحة كامله بل يرسل التغييرات و يتم أستقبالها و تعديل هذه التغييرات بشجرة الdom  

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...