قائمة شائعة للواردات لمكونات/إضافات الثيم (JS)

أجد نفسي عادةً أبحث للعثور على الاستيرادات لأشياء مختلفة عندما أقوم بإنشاء مكون سمة، لذلك قررت تجميع الكثير منها ووضعها هنا.

متعلق بـ Ember

الاسم الاستيراد الاستخدام
Component import Component from \"@glimmer/component\"; export default class MyComponentClass extends Component {}
Action decorator import { action } from \"@ember/action\"; @action
Tracked decorator import { tracked } from \"@glimmer/tracking\"; @tracked myTrackedVar
Service decorator import { service } from \"@ember/service\"; @service modal
(قالب Glimmer) on import { on } from \"@ember/modifier\"; \u003cp {{on \"click\" this.someAction}}\u003eClick me!\u003c/p\u003e[1]

متعلق بـ Discourse

الاسم الاستيراد الاستخدام
apiInitializer import { apiInitializer } from \"discourse/lib/api\"; export default apiInitializer((api) =\u003e {})
withPluginApi import { withPluginApi } from \"discourse/lib/plugin-api\"; withPluginApi((api) =\u003e {})[2][3]
ConditionalLoadingSpinner import ConditionalLoadingSpinner from \"discourse/components/conditional-loading-spinner\"; \u003cConditionalLoadingSpinner @condition={{this.loading}} /\u003e
DButton import DButton from \"discourse/components/d-button\"; \u003cDButton @icon=\"...\" @action={{this.someAction}} /\u003e
ajax import { ajax } from \"discourse/lib/ajax\"; ajax(\"/path/here\")[4]
i18n import { i18n } from \"discourse-i18n\"; {{i18n \"locale_key\"}}[5]
(قالب Glimmer) Equals, not equals, greater than, greater than or equals, less than, less than or equals, or, not, and, has, includes import { eq, and, ... } from \"truth-helpers\"; {{#if (eq this.something this.something2)}}[6]

قد تراهم مجتمعين، مثل المتغيرات المتعقبة كشرط لـ ConditionalLoadingSpinner، أو الإجراءات لـ DButton، إلخ.

آمل أن يساعد هذا!

\u003csmall\u003eأنا لست محترفًا، لذلك إذا لاحظت أي عدم دقة، يرجى المساعدة في تصحيحها أو طرحها، شكرًا لك :slightly_smiling_face:.\u003c/small\u003e


  1. يمكنك أيضًا استخدام أحداث مثل input، mousedown، focusin، إلخ ↩︎

  2. انظر discourse/app/assets/javascripts/discourse/app/instance-initializers/enable-emoji.js at 99ace1be120b928f6c694d0118959d745cc4bdbe · discourse/discourse · GitHub ↩︎

  3. أعتقد أنه يوصى باستخدام apiInitializer بدلاً من ذلك؛ أعتقد أن هذا هو الإصدار القديم؟ ↩︎

  4. يعمل بشكل مشابه لـ fetch(). ضعه في دالة async، مع كلمة مفتاحية await. ↩︎

  5. إذا كنت تحصل على اللغة من المستودع الأساسي، على سبيل المثال user.summary.stats ↩︎

  6. يمكن أن تحتوي أشياء مثل and و or على أكثر من وسيطين ↩︎

6 إعجابات