নকআউটজেএস ডকুমেন্টেশনের খুব কর্সারি পড়ার জন্য, খুব বেসিক নকআউট দৃশ্যের সূচনাটি নীচের মত দেখাচ্ছে
// This is a simple *viewmodel* - JavaScript that defines the data and behavior of your UI
function AppViewModel() {
this.firstName = "Bert";
this.lastName = "Bertington";
}
// Activates knockout.js
ko.applyBindings(new AppViewModel());
উদাহরণস্বরূপ - আপনি একটি জাভাস্ক্রিপ্ট ফাংশন তৈরি করেন যার উদ্দেশ্য একটি অবজেক্ট কনস্ট্রাক্টর হিসাবে ব্যবহার করা হবে, এটি থেকে কোনও বস্তুকে তাত্ক্ষণিকভাবে তৈরি করুন এবং তারপরে সেই বস্তুটি ko.applyBindings
বিশ্বব্যাপী নকআউট অবজেক্টের পদ্ধতিতে পাস করুন ( ko
)
তবে, ম্যাজেন্টো 2-এ, আপনি যদি গ্রিড ইউআই দিয়ে কোনও ব্যাকএন্ড পৃষ্ঠা লোড করেন তবে ম্যাজেন্টো প্রয়োজনীয় js/core/app.js
জেএস মডিউলটি আরম্ভ করবে
/**
* Copyright © 2016 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
define([
'./renderer/types',
'./renderer/layout',
'Magento_Ui/js/lib/ko/initialize'
], function (types, layout) {
'use strict';
return function (data) {
types.set(data.types);
layout(data.components);
};
});
এই মডিউলটি ঘুরে, Magento_Ui/js/lib/ko/initialize
মডিউলটি লোড করে , যা ম্যাগেন্তোর নকআউটজেএস-এর ব্যবহার আরম্ভ করার জন্য উপস্থিত হয়। যাইহোক, আপনি মডিউল আরম্ভ করার উত্স তাকান।
define([
'ko',
'./template/engine',
'knockoutjs/knockout-repeat',
'knockoutjs/knockout-fast-foreach',
'knockoutjs/knockout-es5',
'./bind/scope',
'./bind/staticChecked',
'./bind/datepicker',
'./bind/outer_click',
'./bind/keyboard',
'./bind/optgroup',
'./bind/fadeVisible',
'./bind/mage-init',
'./bind/after-render',
'./bind/i18n',
'./bind/collapsible',
'./bind/autoselect',
'./extender/observable_array',
'./extender/bound-nodes'
], function (ko, templateEngine) {
'use strict';
ko.setTemplateEngine(templateEngine);
ko.applyBindings();
});
আপনি দেখতে Magento এর নামক ko.applyBindings();
বস্তু একটি দৃশ্য বস্তু ছাড়া । এটি কোনও অর্থবোধ করে না এবং আমি নিশ্চিত নই যে এটি আমার নকআউট সম্পর্কে সীমাবদ্ধ বোঝা, বা ম্যাজেন্টো এখানে কাস্টম / অদ্ভুত কিছু করছে।
এখানেই কি ম্যাজেন্টো আসলে নকআউট বাঁধাই প্রয়োগ করে? নাকি তা অন্য কোথাও ঘটে? বা নাগআউট কোডটি আটকানো এবং অন্য কোথাও এটি প্রক্রিয়াজাত করার জন্য ম্যাজেন্টো কৌশলপূর্ণ কিছু করছে?