How to configure view engine correctly

hamza_bouallegue January 11, 2021

Hello !
i developed an app with ACE using React + JSX , when i run my app locally with ngrok it works as expected , now i deployed my app on Heroku and i installed it on my instance but i can’t run it , i got this when i inspect the Heroku logs :

2021-01-11T08:44:24.301934+00:00 app[web.1]: Error: Could not load the component dashboard.jsx. Did you run `npm build to compile your jsx files?
2021-01-11T08:44:24.301935+00:00 app[web.1]: at View.ssrEngine [as engine] (/app/server-side-rendering.js:65:25)
2021-01-11T08:44:24.301936+00:00 app[web.1]: at View.render (/app/node_modules/express/lib/view.js:135:8)
2021-01-11T08:44:24.301936+00:00 app[web.1]: at tryRender (/app/node_modules/express/lib/application.js:640:10)
2021-01-11T08:44:24.301937+00:00 app[web.1]: at Function.render (/app/node_modules/express/lib/application.js:592:3)
2021-01-11T08:44:24.301937+00:00 app[web.1]: at ServerResponse.render (/app/node_modules/express/lib/response.js:1012:7)
2021-01-11T08:44:24.301938+00:00 app[web.1]: at /app/routes/index.js:14:13
2021-01-11T08:44:24.301938+00:00 app[web.1]: at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
2021-01-11T08:44:24.301939+00:00 app[web.1]: at next (/app/node_modules/express/lib/router/route.js:137:13)
2021-01-11T08:44:24.301939+00:00 app[web.1]: at requestHandler (/app/node_modules/atlassian-connect-express/lib/middleware/request.js:122:5)
2021-01-11T08:44:24.301940+00:00 app[web.1]: at /app/node_modules/atlassian-connect-express/lib/middleware/authentication.js:312:9
2021-01-11T08:44:24.301940+00:00 app[web.1]: at processTicksAndRejections (internal/process/task_queues.js:97:5)

this is my route file

export default function routes(app, addon) {
   

    app.get('/', (req, res) => {
        res.redirect('/atlassian-connect.json');
    });

   
    app.get('/myapp',  addon.authenticate(), (req, res) => {
     
        res.render(
          'dashboard.jsx',
          {
            title: 'Atlassian Connect'
           
          }
        );

    });
}

from app.js file :

const devEnv = app.get('env') === 'development';
app.use(morgan(devEnv ? 'dev' : 'combined'));

// Configure Handlebars
const viewsDir = path.join(__dirname, 'views');
const handlebarsEngine = hbs.express4({partialsDir: viewsDir});
app.engine('hbs', handlebarsEngine);
app.set('view engine', 'hbs');
app.set('views', viewsDir);

// Configure jsx (jsx files should go in views/ and export the root component as the default export)
addServerSideRendering(app, handlebarsEngine);

any help about what i m missing please

0 answers

Suggest an answer

Log in or Sign up to answer
DEPLOYMENT TYPE
CLOUD
PRODUCT PLAN
FREE
PERMISSIONS LEVEL
Site Admin
TAGS
AUG Leaders

Atlassian Community Events