ইউআই উপাদানগুলি ডিবাগ করা হচ্ছে


16

আমি একটি সিআরইউডি মডিউল তৈরির চেষ্টা করছি যা অ্যাডমিন গ্রিড এবং ফর্মের জন্য ইউআই উপাদান ব্যবহার করে।
আমি এটি আগেও করেছি এবং কাজ করেছি, তবে এটি কিছুটা আলাদা এবং সম্ভবত আমি কিছু ভুল করেছি something
সমস্যাটি ইউআই উপাদান ফাইলে বা ইউআই উপাদান উপাদান দ্বারা নির্দিষ্ট কোনও শ্রেণীর ক্ষেত্রে নিশ্চিত। যদি আমি লেআউট ফাইল থেকে UI উপাদান রেফারেন্সটি সরিয়ে ফেলি, পৃষ্ঠা লোড হয় (স্পষ্টভাবে গ্রিড ছাড়াই)।
ইউআই উপাদান অন্তর্ভুক্ত করার সময় পৃষ্ঠাটি ফাঁকা থাকে এবং বিকাশকারী মোডে থাকা অবস্থায়ও কোথাও কোনও ত্রুটি লগ হয় না।

আমি / ইউআই উপাদানগুলির লোডিং এবং রেন্ডারিং ডিবাগিংটি কীভাবে / কোথায় শুরু করতে পারি?


কিছুদিন আগে আমারও একই সমস্যা ছিল। এটি ui_comp घटक ফোল্ডারের ভুল ফোল্ডারের কাঠামোর কারণে ছিল। তারপরে di.xML এ সমস্যা ছিল
ভূপেন্দ্র জাদেজা

এই মুহুর্তের জন্য আমি আমার ত্রুটিটি যত্ন করি না। ভবিষ্যতে এটি ঘটতে পারে তাই আমি কীভাবে এটি ডিবাগ করতে পারি সে সম্পর্কে আমি যত্নশীল।
মারিয়াস

এক্সএমএল ডিবাগ করা খুব ক্লান্তিকর কাজ। প্রতিবার আমি রিপোর্ট এবং system.xML এ ত্রুটি পেয়েছি। আশা করি আমরা মূল দল থেকে উত্তর পেয়েছি।
ভূপেন্দ্র জাদেজা

আপনি কি এক্সএমএল ডিবাগ করার কোনও উপায় পেয়েছেন?
ভূপেন্দ্র জাদেজা

1
আমি অ্যাপ্লিকেশনটিতে একটি পয়েন্ট পেয়েছি যেখানে আমি শুরু করতে পারি, তবে আমি এখনও নিশ্চিত নই যে এটি করা সবচেয়ে ভাল পয়েন্ট নয়। আমি কোনও শক্ত কিছু পাইলে আমি আজ বা কাল একটি উত্তর পোস্ট করব।
মারিয়াস

উত্তর:


12

আমি এখন পর্যন্ত যা পেয়েছি তা হ'ল লেআউটটি রেন্ডার করার সময় এই স্ট্যাকটি অনুসরণ করা হয়।

  • \Magento\Framework\View\Layout::generateElements
  • \Magento\Framework\View\Layout\GeneratorPool::process

এখন, বিন্যাসের ধরণের উপর নির্ভর করে একটি ভিন্ন লেআউট জেনারেটর ডেকে আনা হয়

foreach ($this->generators as $generator) {
    $generator->process($readerContext, $generatorContext);
}

ইউআই উপাদানগুলির জন্য ... স্ট্যাকটি চালিয়ে যাচ্ছে:

  • \Magento\Framework\View\Layout\Generator\UiComponent::process()
  • \Magento\Framework\View\Layout\Generator\UiComponent::generateComponent()
  • \Magento\Framework\View\Element\UiComponentFactory::create()
  • \Magento\Ui\Model\Manager::prepareData()
  • \Magento\Ui\Model\Manager::evaluateComponents()
  • Magento\Framework\Data\Argument\InterpreterInterface::evaluate

এখানে আবার এটি যুক্তির ধরণের উপর নির্ভর করে যার ব্যাখ্যা করা দরকার be
আপনি এখানে কিছু দোভাষী পেতে পারেনlib/internal/Magento/Framework/Data/Argument/Interpreter/

এটি যতদূর পেলাম।
আমি জানি এটি একটি সম্পূর্ণ ব্যাখ্যা নয়, তবে এগুলি এমন কিছু বিষয় যা আপনার ইউআই উপাদানগুলির সাথে কিছু ভুল আছে কিনা তা আপনি সনাক্ত করতে পারেন।


1

চেষ্টা করুন:

Source/vendor/magento/module-ui/Component/Wrapper/UiComponent.php

পদ্ধতি: protected function _toHtml()

প্রায় 57 লাইনে শুরু

ডিবাগ $resultএবং এটিতে লোড হওয়া সমস্ত উপাদান থাকা উচিত।


0

আমি ইউআই উপাদানগুলি ডিবাগ করতে সক্ষম হয়েছি কেবলমাত্র উপাদানটি এক্সএমএল থেকে সমস্ত কিছু সরিয়ে ফেলা এবং একবারে আইটেমগুলিতে যুক্ত করে নিশ্চিত করা যায় যে বৈশিষ্ট্যগুলি এক্সএসএসে সমর্থিত কিনা।


1
এক্সএসডি ফাইলের বিপরীতে ফাইলটি বৈধ। এবং আমি নিশ্চিত যে ফাইলের বিট অপসারণ ছাড়াও অন্য কোনও উপায় আছে। ফাইলটি লোড এবং প্রক্রিয়াজাতকরণের জায়গা থাকতে হবে।
মারিয়াস

0

আপনি ডিবাগিং শুরু করার জন্য সিএসএস ব্যবহার করে শুরু করতে পারেন আপনি অ্যাপ্লিকেশন / ডিজাইন / ফ্রন্টএন্ড / এমজি / মলি / ওয়েব / সিএসএস এর অধীন থিম.বিহীন ফাইল ব্যবহার করতে পারেন যেমন @ বেস-রঙের পরিবর্তনের বেস রঙটি: @ 7c7bad

আপনার ভের ডিরেক্টরি মুছে ফেলা কোনও কোড পরিবর্তন করার পরে, আপনার কাছে পাব / স্ট্যাটিক / ফ্রন্টএন্ড / এর ফ্রন্টএন্ড ডিরেক্টরিতে স্বচ্ছ সামগ্রী রয়েছে

সর্বশেষে হিট কমান্ডে সিএমডি পিএইচপি বিন / ম্যাজেন্টো সেটআপ: স্ট্যাটিক-সামগ্রী: স্থাপন করুন


সিএসএসের ইউআই উপাদানগুলি ডিবাগিংয়ের সাথে কী করতে হবে?
মারিয়াস

আপনি এর লেআউট বা রঙ পরিবর্তন করতে পারেন। @ মারিয়াস
vnnogile_user

এই প্রশ্নের সাথে কোন সম্পর্ক নেই। আমি রং পরিবর্তন সম্পর্কে জিজ্ঞাসা করিনি।
মারিয়াস

0

আমি দিয়ে শুরু করব:

Magento\Ui\TemplateEngine\Xhtml\Result->__toString( )

এটি সেই জায়গা যেখানে ইউআই এক্সএমএল একসাথে টানা হয়। সুতরাং এটি ইউআই এক্সএমএল ডিবাগের জন্য একটি সূচনা পয়েন্ট হওয়া উচিত।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.