Я работаю над плагином, специфичным для нашей тематики, для нашего форума, и мы хотели бы создать собственные небольшие действия, аналогичные этим:
В частности, мне нужно просто иметь возможность размещать такие уведомления в теме, но с возможностью настройки иконки и текста.
Может ли кто-нибудь провести меня через структуры/модули/шаблоны и т. д., в которые мне нужно внедриться, чтобы реализовать это на бэкенде и фронтенде, или вы можете указать на существующий плагин, который уже реализует это?
Спасибо!
david
(David Taylor)
17.Март.2020 15:35:27
2
discourse-assign, вероятно, лучший пример этого:
# frozen_string_literal: true
class ::TopicAssigner
def self.backfill_auto_assign
deprecation_note
Assigner.backfill_auto_assign
end
def self.assigned_self?(text)
deprecation_note
Assigner.assigned_self?(text)
end
def self.auto_assign(post, force: false)
deprecation_note
Assigner.auto_assign(post, force)
end
def self.is_last_staff_post?(post)
deprecation_note
This file has been truncated. show original
А затем несколько элементов для добавления иконки / контента
https://github.com/discourse/discourse-assign/blob/master/assets/javascripts/discourse-assign/initializers/extend-for-assigns.js.es6#L158-L169
Спасибо, это очень помогло.
Какой будет лучший способ сделать отображение мелких действий с более богатым текстом?
Текущий вариант:
То, что я хочу: (я достиг этого, вручную добавив класс cooked в div с классом small-action-desc)
Я просмотрел исходный код о пост-трансформаторах, но не нашёл ничего связанного с этим.
РЕДАКТИРОВАНИЕ: в итоге я просто добавил это как .scss
.custom-message {
ins {
background-color: dark-light-choose(
$success-low,
scale-color($success, $lightness: -60%)
);
}
del {
background-color: dark-light-choose(
$danger-low,
scale-color($danger, $lightness: -60%)
);
}
}