টেম্পলেট করার জন্য ডকুমেন্টেশনটি আংশিক, আমি উত্সটি দেখেছি।
_.Template ফাংশন 3 আর্গুমেন্ট আছে:
- স্ট্রিং টেক্সট : টেমপ্লেট স্ট্রিং
- অবজেক্ট ডেটা : মূল্যায়নের ডেটা
- অবজেক্ট সেটিংস : স্থানীয় সেটিংস, _.টিম্পলেটসেটিংস হ'ল গ্লোবাল সেটিংস অবজেক্ট
যদি কোনও ডেটা (বা নাল) দেওয়া না হয় তবে একটি রেন্ডার ফাংশনের চেয়ে ফিরে আসবে। এটির 1 টি যুক্তি রয়েছে:
- অবজেক্ট ডেটা : উপরের ডেটার মতোই
সেটিংগুলিতে 3 রেজেক্স প্যাটার্ন এবং 1 টি স্ট্যাটিক প্যারামিটার রয়েছে:
- RegExp মূল্যায়ন করুন : টেমপ্লেটের স্ট্রিংয়ে "<% কোড%>"
- RegExp ইন্টারপোল্ট : টেম্পলেট স্ট্রিংয়ে "<% = কোড%>"
- রেজিপ্যাক্স এড়ানো : "<% - কোড%>"
- স্ট্রিং ভেরিয়েবল : alচ্ছিক, টেম্পলেট স্ট্রিংয়ের ডেটা প্যারামিটারের নাম
একটি মূল্যায়ন বিভাগের কোডটি সহজভাবে মূল্যায়ন করা হবে। আপনি এই বিভাগ থেকে __p + = "মাইস্ট্রিং" কমান্ডের সাহায্যে মূল্যায়নযোগ্য টেমপ্লেটে স্ট্রিং যুক্ত করতে পারেন , তবে এটি প্রস্তাবিত নয় (টেম্প্লেটিং ইন্টারফেসের অংশ নয়), এর পরিবর্তে ইন্টারপোলেট অংশটি ব্যবহার করুন। এই ধরণের বিভাগটি যদি টেম্পলেটে ব্লক যুক্ত করতে হয় তবে।
ইন্টারপোলেট বিভাগে কোডের ফলাফল মূল্যায়ন টেম্পলেটটিতে যুক্ত হবে। যদি নালটিকে ফিরিয়ে দেওয়া হয়, তবে খালি স্ট্রিং যুক্ত হবে।
পালাবার বিভাগের দ্বারা এইচটিএমএল পালাতে _.escape দেওয়া কোডের ফেরত মান উপর। সুতরাং একটি চেয়ে তার অনুরূপ _.escape (কোড) একটি ইন প্রবেশ করান অধ্যায়, কিন্তু এটা দিয়ে পালাতে \ মত হোয়াইটস্পেস অক্ষর \ N আগেই কোড পাসের _.escape । আমি জানি না কেন এটি গুরুত্বপূর্ণ, এটি কোডে রয়েছে তবে এটি ইন্টারপোলেট এবং _.সেস্কেপ - যা সাদা-স্থানের অক্ষরগুলি থেকেও রেহাই পায় না - এর সাথেও ভালভাবে কাজ করে।
ডিফল্টরূপে ডেটা প্যারামিটারটি একটি (ডেটা) {...} স্টেটমেন্ট দিয়ে পাস হয় তবে এই ধরণের মূল্যায়নটি নামকরণ ভেরিয়েবলের সাথে মূল্যায়নের চেয়ে অনেক ধীর। ভেরিয়েবলের প্যারামিটার দিয়ে ডেটা নামকরণ করা ভাল কিছু ...
উদাহরণ স্বরূপ:
var html = _.template(
"<pre>The \"<% __p+=_.escape(o.text) %>\" is the same<br />" +
"as the \"<%= _.escape(o.text) %>\" and the same<br />" +
"as the \"<%- o.text %>\"</pre>",
{
text: "<b>some text</b> and \n it's a line break"
},
{
variable: "o"
}
);
$("body").html(html);
ফলাফল
The "<b>some text</b> and
it's a line break" is the same
as the "<b>some text</b> and
it's a line break" and the same
as the "<b>some text</b> and
it's a line break"
আপনি এখানে টেমপ্লেটটি কীভাবে ব্যবহার করতে এবং ডিফল্ট সেটিংসকে ওভাররাইড করতে পারেন তার আরও উদাহরণ পেতে পারেন: http : // :
30corejs.org/#template
টেমপ্লেট লোড করে আপনার কাছে অনেকগুলি বিকল্প রয়েছে তবে শেষে আপনাকে সর্বদা টেমপ্লেটটিকে স্ট্রিংয়ে রূপান্তর করতে হবে। আপনি এটিকে উপরের উদাহরণের মতো স্বাভাবিক স্ট্রিং হিসাবে দিতে পারেন, বা আপনি এটি কোনও স্ক্রিপ্ট ট্যাগ থেকে লোড করতে পারেন এবং jquery এর .html () ফাংশনটি ব্যবহার করতে পারেন, অথবা আপনি এটিকে প্রয়োজনীয় . js এর টিপিএল প্লাগইন দিয়ে একটি পৃথক ফাইল থেকে লোড করতে পারেন ।
টেম্প্লেটিংয়ের পরিবর্তে লকোনিক দিয়ে ডোম গাছ তৈরির আর একটি বিকল্প ।