আমি নোড.জেএস ব্যবহার করে একটি সম্পূর্ণ ওয়েব অ্যাপ্লিকেশন তৈরির জন্য পরীক্ষা করছি জ্যাঙ্গো টেম্পলেট ইঞ্জিনের মতো কোনও টেম্পলেট ইঞ্জিন বা উদাহরণস্বরূপ কি কমপক্ষে আপনাকে বেস টেমপ্লেটগুলি প্রসারিত করতে দেয়?
আমি নোড.জেএস ব্যবহার করে একটি সম্পূর্ণ ওয়েব অ্যাপ্লিকেশন তৈরির জন্য পরীক্ষা করছি জ্যাঙ্গো টেম্পলেট ইঞ্জিনের মতো কোনও টেম্পলেট ইঞ্জিন বা উদাহরণস্বরূপ কি কমপক্ষে আপনাকে বেস টেমপ্লেটগুলি প্রসারিত করতে দেয়?
উত্তর:
নোড জেএস মডিউলগুলি উইকি পৃষ্ঠা দেখুন। তারা নোড.জেএস সমর্থনকারী সমস্ত টেম্প্লেটিং ইঞ্জিন তালিকাভুক্ত করেছে ।
আপনি গোঁফ.জেএস ব্যবহার করতে সক্ষম হবেন, যদি এটি কাজ না করে তবে আমাকে সমস্যাগুলি প্রেরণ করুন এবং আমি এটি ঠিক করব কারণ আমি যেভাবেই নোড.জেজে এগুলি ব্যবহার করব।
http://github.com/janl/mustache.js
আমি জানি যে এটি কোনও ডিওএম ছাড়াই কাজ করে কারণ একগুচ্ছ কাউচডিবি স্ট্যান্ডলোন অ্যাপ্লিকেশন এটিকে স্পাইডারমনকি ভিউ সার্ভারে ব্যবহার করছে।
আপনি যদি এইচএমএল পছন্দ করেন তবে নোডের জন্য আরও ভাল কিছু পরীক্ষা করে দেখতে চান http://jade-lang.com , আমি পাশাপাশি hML.js লিখেছি :)
সব সময় নতুন টেম্প্লেটিং ইঞ্জিন রয়েছে।
আন্ডারস্কোর.জেএস জেএসে প্রচুর ক্রিয়ামূলক প্রোগ্রামিং সমর্থন যোগ করে এবং এতে টেম্প্লেটিং রয়েছে।
এবং ঠিক আজ আমি এই সম্পর্কে শুনেছি: http://github.com/SamuraiJack/Shotenjin- সরানো
আপনার নোড-অ্যাসিঙ্কইজেএসটি লক্ষ্য করা উচিত , যা নোড.জেএসগুলির অ্যাসিনক্রোনাস প্রকৃতিকে স্পষ্টভাবে বিবেচনার জন্য ডিজাইন করা হয়েছে। এমনকি এটি টেমপ্লেটের ভিতরে অ্যাসিঙ্ক কোডগুলি ব্লক করতে দেয় allows
এখানে একটি উদাহরণ ডকুমেন্টেশন গঠন:
<html>
<head>
<% ctx.hello = "World"; %>
<title><%= "Hello " + ctx.hello %></title>
</head>
<body>
<h1><%? setTimeout(function () { res.print("Async Header"); res.finish(); }, 2000) %></h1>
<p><%? setTimeout(function () { res.print("Body"); res.finish(); }, 1000) %></p>
</body>
</html>
আপনি দাড়িবিহীন চেষ্টা করতে পারেন (এটি ওয়েল্ড / প্লেট দ্বারা অনুপ্রাণিত):
উদাহরণ স্বরূপ:
{ post:
{ title: "Next generation templating: Start shaving!"
, text: "TL;DR You should really check out beardless!"
, comments:
[ {text: "Hey cool!"}
, {text: "Really gotta check that out..."} ]
}
}
আপনার টেম্পলেট:
<h1 data-template="post.title"></h1>
<p data-template="post.text"></p>
<div>
<div data-template="post.comments" class="comment">
<p data-template="post.comments.text"></p>
</div>
</div>
আউটপুট:
<h1>Next generation templating: Start shaving!</h1>
<p>TL;DR You should really check out beardless!</p>
<div>
<div class="comment">
<p>Hey cool!</p>
</div>
<div class="comment">
<p>Really gotta check that out...</p>
</div>
</div>
সাইমন উইলিসন জ্যাঞ্জোড প্রকল্পের জন্য জাঙ্গো টেম্পলেট ভাষার একটি সুন্দর সম্পূর্ণ বন্দরটিতে আমি কিছু কাজ করেছি ( জাঙ্গো থেকে কিছু দরকারী ধারণা ধার করা নোড.জেএস এর জন্য ইউটিলিটিস ফাংশন)।
ডকুমেন্টেশন এখানে দেখুন ।
আমি সিমফোনির সাথে ট্যুইগ ব্যবহার করি এবং এখন আমি নোড.জেএসে ছোটাছুটি করছি, তাই আমি https://github.com/justjohn/twig.js এবং https://github.com/paularm স্ট্র/swig এ দেখছি , যা আপনি সম্ভবত আপনি যদি জাঙ্গো ব্যবহার করেন তবে পছন্দ করুন।
আপনি যদি টেমপ্লেটগুলিতে ন্যূনতম পদ্ধতির সন্ধান করেন তবে আপনি JSON টেমপ্লেটটি পরীক্ষা করে দেখতে পারেন ।
আরও একটি পূর্ণ বৈশিষ্ট্যযুক্ত বিকল্প হ'ল ইজেএস । এটি জ্যাঙ্গোর কাছ থেকে আপনি যে কোনও কিছুর সাথে মিল পান a
আপনার মাইলেজ এগুলির জন্য পৃথক হতে পারে - সেগুলি ব্রাউজার জাভাস্ক্রিপ্ট পরিবেশের জন্য ডিজাইন করা হয়েছে, নোড.জেএস নয় not
সতর্কতা: জিনজেগুলি আর রক্ষণাবেক্ষণ করা হয় না। এটি এখনও কাজ করছে তবে এক্সপ্রেসের সর্বশেষতম সংস্করণের সাথে সামঞ্জস্যপূর্ণ নয়।
আপনি জিনজ ব্যবহার করার চেষ্টা করতে পারেন । এটি জিনজার একটি বন্দর, খুব ভাল পাইথন টেম্প্লেটিং সিস্টেম। আপনি এটি এনপিএম সহ এটি ইনস্টল করতে পারেন:
npm install jinjs
টেম্পলেট.টিপিএল:
I say : "{{ sentence }}"
আপনার টেম্পলেট.জেএস এ:
jinjs = require('jinjs');
jinjs.registerExtension('.tpl');
tpl = require('./template');
str = tpl.render ({sentence : 'Hello, World!'});
console.log(str);
আউটপুটটি হবে:
I say : "Hello, World!"
আমরা এটি সক্রিয়ভাবে বিকাশ করছি, খুব শীঘ্রই একটি ভাল ডকুমেন্টেশন আসা উচিত।
এইচএমএল নোড.জেএস এর জন্য একটি ভাল পছন্দ
http://github.com/creationix/haml-js
haml-JS
!!! XML
!!! strict
%html{ xmlns: "http://www.w3.org/1999/xhtml" }
%head
%title Sample haml template
%body
.profile
.left.column
#date= print_date()
#address= current_user.address
.right.column
#email= current_user.email
#bio= current_user.bio
এইচটিএমএল
<?xml version='1.0' encoding='utf-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sample haml template
</title></head><body><div class="profile"><div class="left column"><div id="date">January 1, 2009
</div><div id="address">Richardson, TX
</div></div><div class="right column"><div id="email">tim@creationix.com
</div><div id="bio">Experienced software professional...
</div></div></div></body></html>
আমি {ধুলাবালি} http://akdubya.github.com/dustjs/#dust সম্পর্কে ভাল জিনিস শুনেছি
নোড.জেএস এর জন্য রেজার সিনট্যাক্সের মতো "ভ্যাশ" - এপটনেট এমভিসি চেষ্টা করুন
https://github.com/kirbysayshi/Vash
এছাড়াও চেকআউট: http://haacked.com/archive/2011/01/06/razor-syntax-quick-references.aspx
// sample
var tmpl = vash.compile('<hr/>@model.a,@model.b<hr/>');
var html = tmpl({"a": "hello", "b": "world"});
res.write(html);
গুগলের ক্লোজার টেমপ্লেটগুলি একটি নেটিভ-জাভাস্ক্রিপ্ট টেম্প্লেটিং সিস্টেম এবং নোডজেএস সহ একটি আপাতদৃষ্টিতে প্রাকৃতিক ফিট। তাদের একীকরণের জন্য কিছু নির্দেশাবলী এখানে দেওয়া হয়েছে।
আপনি কি খাঁটি চেষ্টা করেছেন ?
যদি আপনি এটি চেষ্টা করে থাকেন তবে ফোরামে আপনার যে কোনও সমস্যার মুখোমুখি হতে হবে তা নির্দ্বিধায় পোস্ট করুন
এটি প্রাথমিকভাবে ব্রাউজারের জন্য তৈরি করা হলেও এটি জ্যাকার এবং গেন্ডারের সাথে ভালভাবে কাজ করে।
আমি এখনও নোড.জেএস জানি না তবে আপনি যদি কিছু জেএস এবং মেমরিতে ফাংশনগুলি ক্যাশে করতে পারেন তবে গতি আরও বেশি চিত্তাকর্ষক হওয়া উচিত।
জাভা স্ক্রিপ্টে জ্যাঙ্গো টেম্প্লেটিং ইঞ্জিনের একটি বন্দর রয়েছে। তবে এটি দীর্ঘ সময়ের জন্য আপডেট করা হয়নি তবে এটিতে এখনও যথেষ্ট বৈশিষ্ট্য থাকতে পারে।
ইয়াজেতও চেষ্টা কর । ;-) এটি একটি নতুন যা আমি গতকাল প্রকাশ করেছি, তবে আমি এখনই এটি ব্যবহার করছি এবং এটি স্থিতিশীল এবং দ্রুত (টেমপ্লেটগুলি একটি দেশীয় জেএস ফাংশনে সংকলিত হয়)।
এটি আইএমওতে কোনও টেম্পলেট ইঞ্জিনের পক্ষে সর্বোত্তম সিনট্যাক্স এবং এর ছোট কোড আকারের (8.5 কে মিনাইফড) সত্ত্বেও একটি সমৃদ্ধ বৈশিষ্ট্য সেট রয়েছে। এটির নির্দেশিকা রয়েছে যা আপনাকে শর্তসাপেক্ষে পুনরাবৃত্তি করতে, অ্যারে / হ্যাশগুলি পুনরায় ব্যবহার করতে সক্ষম হবে, পুনরায় ব্যবহারযোগ্য টেম্পলেট উপাদানগুলি সংজ্ঞায়িত করতে পারে etc.
এখানে বিভিন্ন ইঞ্জিনের একটি ভাল মূল্যায়ন এর http://engineering.linkedin.com/frontend/client-side-templating-throwdown-mustache-handlebars-dustjs-and-more
সত্যিই, নোড.জেএস এর জন্য সেরা এবং সর্বাধিক সাধারণ টেম্পলেট ইঞ্জিনটি (আইএমএইচও) প্লেটগুলি ( https://github.com/flatiron/plates )। আপনি নোড.জেএস ( http://flatiron.org ) এর জন্য ফ্ল্যাটিরন এমভিসি ফ্রেমওয়ার্কটিও দেখতে চাইতে পারেন ।