هذه طريقة استخدام Tagify في اي مكون livewire خاص بك.
فقط : wire:model, wire:model.defer مسموح بهم.
1<div wire:ignore>2 <input data-pharaonic="tagify" data-component-id="{{ $this->id }}" wire:model="fruits">3</div>
ستكون النتيجة كالتالي :
1[2 [3 "value" => "Apple"4 ],5 [6 "value" => "Banana"7 ]8]
يمكنك استخدام صفة value لتعيين قائمة عناصر.
ويمكنك استخدام صفة data-direct للحصول على القيم بدون مصفوفات فرعية.
1<div wire:ignore>2 <input data-pharaonic="tagify" data-component-id="{{ $this->id }}" wire:model="fruits"3 value='@json(['Banana', 'Orange', 'Apple'])' data-direct>4</div>
ستكون النتيجة كالتالي :
1[2 "Banana",3 "Orange",4 "Apple"5]
يمكنك استخدام صفة data-suggest-list لتعيين قائمة عناصر مقترحة أو مسموح بها فقط.
ولتفعيل قائمة المقترحات يجب استخدام صفة data-suggest.
ولتفعيل القائمة المسموح بها فقط يجب استخدام صفة data-suggest-enforce.
1<!-- Suggested List --> 2<div wire:ignore> 3 <input data-pharaonic="tagify" data-component-id="{{ $this->id }}" wire:model="fruits" 4 data-suggest-list='@json(['Banana', 'Orange', 'Apple'])' data-suggest> 5</div> 6 7<!-- Allowed List --> 8<div wire:ignore> 9 <input data-pharaonic="tagify" data-component-id="{{ $this->id }}" wire:model="fruits"10 data-suggest-list='@json(['Banana', 'Orange', 'Apple'])' data-suggest-enforce>11</div>
يمكنك استخدام صفة data-black-list لتعيين قائمة عناصر ممنوع استخدامها..
1<div wire:ignore>2 <input data-pharaonic="tagify" data-component-id="{{ $this->id }}" wire:model="fruits"3 data-black-list='@json(['Strawberry'])'>4</div>
1<div wire:ignore> 2 <input data-pharaonic="tagify" data-component-id="{{ $this->id }}" wire:model="fruits" 3 value='[{"value":"Banana", "color":"Yellow"},{"value":"Orange", "color":"Orange"}]' 4 5 data-black-list='["Strawberry"]' 6 7 data-key="color" 8 data-value="value" 9 data-suggest-enforce10 data-suggest-list='[{"value":"Banana", "color":"Yellow"},{"value":"Orange", "color":"Orange"},{"value":"Apple", "color":"Yellow, Green, Red"},{"value":"Strawberry", "color":"Red"}]'11 data-classname="customSuggestionsList"12 13 data-direct14 data-max=2>15</div>
في هذا المثال نرى الكثير من الأشياء الجديدة وسيتم ايضاح كل شئ الآن :
الصفة | الوصف |
---|---|
value |
لتعيين قائمة عناصر ذات مفتاح وقيمة. |
data-black-list |
لتعيين قائمة عناصر ممنوع استخدامها. |
data-key |
لتعيين المفتاح وهذا المفتاح سيتم ارساله إلى الخادم. |
data-value |
لتعيين القيمة وهي التي ستظهر للمستخدم. |
data-suggest-enforce |
للسماح لقائمة العناصر فقط. |
data-suggest-list |
لتعيين قائمة من العناصر المسموح بها فقط (في هذه الحالة). |
data-classname |
لتعيين class على القائمة المنسدلة وبالتالي يمكن عمل شخص خاص لهذه القائمة. |
data-direct |
للحصول على القيم بشكل مباشر بدون اي مصفوفات فرعية. |
data-max |
لتعيين الحد الأقصى من العناصر التي يتم اختيارها. |
يمكنك استخدام الأحداث لتفعيل Tagify على كل الصفحة من جديد أو على عنصر بعينه.
1// Init Event2$this->dispatchBrowserEvent('pharaonic.tagify.init');3 4// Load Event5$this->dispatchBrowserEvent('pharaonic.tagify.load', [6 'component' => $this->id,7 'target' => '#input-here'8]);