টেম্পলেটটির উপাদানটিতে এর মতো যুক্ত হওয়ার জন্য আমি কেবলমাত্র নিজের নির্দেশটি পেয়েছি:
# CoffeeScript
.directive 'dashboardTable', ->
controller: lineItemIndexCtrl
templateUrl: "<%= asset_path('angular/templates/line_items/dashboard_rows.html') %>"
(scope, element, attrs) ->
element.parent('table#line_items').dataTable()
console.log 'Just to make sure this is run'
# HTML
<table id="line_items">
<tbody dashboard-table>
</tbody>
</table>
আমি ডেটা টেবিলস নামে একটি জিকিউরি প্লাগইনও ব্যবহার করছি। এটির সাধারণ ব্যবহার এরকম: $ ('টেবিল # কিছু_আইডি') data ডেটা টেবিল ()। আপনি সারণির ডেটা সরবরাহ করার জন্য জেএসএন ডেটাতে ডেটা টেবিল () কলটিতে যেতে পারেন অথবা আপনি পৃষ্ঠাটিতে ইতিমধ্যে ডেটা রাখতে পারেন এবং এটি বাকিটি করবে will এইচটিএমএল পৃষ্ঠায় ইতিমধ্যে সারিগুলি রেখে আমি পরে করছি am ।
তবে সমস্যাটি হ'ল আমাকে ডেমের পরে টেবিলে # লাইন_সাইটগুলি উপাত্ত টেবিল () কল করতে হবে। উপরে আমার নির্দেশিকাটি টেমপ্লেটটিকে নির্দেশকের উপাদানটিতে যুক্ত করার আগে ডেটা টেবিল () পদ্ধতিটি কল করে। সংযোজনের পরে ফাংশনগুলিতে কল করার কোনও উপায় আছে কি?
আপনার সাহায্যের জন্য ধন্যবাদ!
অ্যান্ডির উত্তরের পরে 1 আপডেট করুন:
আমি নিশ্চিত করতে চাই যে লিঙ্ক পদ্ধতিটি কেবলমাত্র পৃষ্ঠাটিতে রয়েছে তারপরেই ডাকা হবে যাতে আমি কিছুটা পরীক্ষার জন্য নির্দেশকে পরিবর্তন করেছি:
# CoffeeScript
#angular.module(...)
.directive 'dashboardTable', ->
{
link: (scope,element,attrs) ->
console.log 'Just to make sure this gets run'
element.find('#sayboo').html('boo')
controller: lineItemIndexCtrl
template: "<div id='sayboo'></div>"
}
এবং আমি সত্যিই ডিভি # সাইবুতে "বু" দেখতে পাচ্ছি।
তারপরে আমি আমার jquery ডেটাটেবল কল চেষ্টা করি
.directive 'dashboardTable', ->
{
link: (scope,element,attrs) ->
console.log 'Just to make sure this gets run'
element.parent('table').dataTable() # NEW LINE
controller: lineItemIndexCtrl
templateUrl: "<%= asset_path('angular/templates/line_items/dashboard_rows.html') %>"
}
ভাগ্য নেই
তারপরে আমি একটি সময় যোগ করার চেষ্টা করব:
.directive 'dashboardTable', ($timeout) ->
{
link: (scope,element,attrs) ->
console.log 'Just to make sure this gets run'
$timeout -> # NEW LINE
element.parent('table').dataTable()
,5000
controller: lineItemIndexCtrl
templateUrl: "<%= asset_path('angular/templates/line_items/dashboard_rows.html') %>"
}
এবং যে কাজ করে। সুতরাং আমি ভাবছি কোডটির নন-টাইমার সংস্করণে কী ভুল হয়?