I'm learning node.js thesedays and new to back-end. One thing that I'm confused is why do we have to use View Templates? Why don't we just use HTML form on server side?
Why do we have to use View Templates such as Jade, EJS and Hogan on server side??
285 Views Asked by KimCrab At
1
There are 1 best solutions below
Related Questions in NODE.JS
- Using Puppeteer to scrape a public API only when the data changes
- How to request administrator rights?
- How do I link two models in mongoose?
- Variable inside a Variable, not updating
- Unable to Post Form Data to MongoDB because of picturepath
- Connection terminated unexpectedly while performing multi row insert using pg-promise
- Processing multiple forms in nodejs and postgresql
- Node.js Server + Socket.IO + Android Mobile Applicatoin XHR Polling Error...?
- How to change the Font Weight of a SelectValue component in React when a SelectItem is selected?
- My unban and ban commands arent showing when i put the slash
- how to make read only file/directory in Mac writable
- How can I outsource worker processes within a for loop?
- Get remote MKV file metadata using nodejs
- Adding google-profanity-words to web page
- Products aren't displayed after fetching data from mysql db (node.js & express)
Related Questions in PUG
- Is this a pug template bug or my misunderstanding of the grammar?
- Array send by post form always received as string with first element only in Node js Express with pug
- Can't escape characters in pug/jade
- NodeJs express and mongodb basic setup
- how to make html div displays as 3 Column in pug
- the gulp-pug doesn't work and say unexpected token "indent"
- How do I add structured data json script to Pug JS
- A GET request is being fired off instead of the POST Request I've explicitly mentioned in axios
- Express using default error handling page instead of view?
- Mongoose data not showing on the web page as expected
- How to add custom arabic font for pdf in pug file in node js project
- Linting for Pug and SASS inside Svelte files
- I am building an app where I want the admin to update any user who are displayed in the admin panel
- Unable to access a property of an object using Mongoose
- pug how to set dynamic src
Related Questions in BACKEND
- Why am I getting 'Method Not Allowed Error' in vercel
- Vite TypeError: Cannot read properties of undefined (reading 'VITE_YOUTUBE_API_KEY')
- Java and React WebSocket - Error Connection
- Should I compress images in java backend before sending to frontend?
- why static file handling in express js does not work for absolute path?
- connect ECONNREFUSED 43.205.72.30:27017 while connecting to Atlas
- Can you define a variable in ranges in java
- The "local" function in passport.authenticate is not being invoked for some reason
- CastError: Cast to ObjectId failed for value "{ _id: undefined }
- why we got same data type in two versions like "int" and "integer" in php?
- Nextjs - Push files to mongodb (hexoid is not a function - error)
- localhost refused to connect and now it wont even load
- How does a server handle multiple requests, and how does is know where to send which response?
- Spotify Auth access token givin error code 400
- Streaming multiple payloads through a response on swift Vapor 4
Related Questions in EJS
- Vercel showing Internal Server Error after deploying express app successfully
- how ejs converting to excel
- Issue with EJS Templating Syntax Highlighting and Rendering in Visual Studio Code
- res.render not rendering all the data
- How to render a ejs view after sending POST form data to the server?
- How to prevent vertical autoscrolling in VS Code in EJS and JS files?
- EJS is not being rendered
- nodemon index.js not working in windows but works on macOS
- Express.js Router Downloading EJS File instead of Showing it
- hasOne association using Sequelize does not work when using the .ejs template to display data
- how can i embed trading view widget ticker tape on my ejs file
- Hyperscript - How do i assign an event to a found element?
- How to deploy a website using .ejs on hosting services?
- "Invalid JSON response: null" error when using Gemini Pro Vision AI API in Node.js
- unable to compare Number data of mongodb in expressJS route
Related Questions in VIEW-TEMPLATES
- I am trying to use handlebars but while rendering in server.js file its always showing me res.render is not a function in browser
- Angular 7, Enum and Input property binding
- When to use block or include in pug?
- On different errors set different view files in Zend Framework
- TYPO3 pass Fluid variable value to the Javascript
- How can I use an image instead of a shape for a node in graph view in Soley Studio?
- Version control for MySQL objects (panoramic templates)
- How to generate edit modals for each element in the model?
- Creating ASP MVC custom views with automatic ng-bind
- ASP.NET MVC - performance issue when using EditorFor
- Cakephp 3.0 how to create files for URL like domain.com/Products/Category1/Sub-Category1/1
- Play Framework 2.4 how to use return statement in Action controller
- Why do we have to use View Templates such as Jade, EJS and Hogan on server side??
- A more DRY way to show/hide partials/template in rails
- Overriding orchard view template
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Templates are used in most of the language platforms, not just NodeJS. There is a school of thought in software development that says "Your data/business logic should be separate from your presentation" and templates are used to achieve that. This is ofcourse the right concern for software development and it's benefit are most visibly seen in Model-View-Controller frameworks like Rails, Laravel, and Symphony to name a few.
There are many benefits to keeping your data/business logic separate from presentation:
Developer and Designer roles are vastly separated and their responsibilities are well defined.
Your application user interface becomes modular that is it can be changed without involving a developer.
Your application business logic can be altered by developers as long as they provide the data required for template rendering.
Code consistency is vastly improved as the templating language provides uniformity and you do not have to use dynamic language constructs with raw markup(in case of web projects but you get the idea).
For a practical example of these benefits, you can look into many open source projects like Ghost, October CMS etc.