add accepts? method
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 45/100
Direzione di ricerca
Inizia dalla classe base HyperComponent ed esamina l’implementazione esistente di fires e la gestione di accepts_list. Aggiungi accepts? in modo che un componente possa determinare se il proprio elemento padre dispone di un handler per l’evento indicato, quindi verifica che l’attivazione di un evento senza un handler nell’elemento padre continui a non generare errori.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Its useful for a component to know if its parent is going to accept an event from the component.
fires :foo
...
... accepts? :foo # does my parent component have a foo handler?
Note that firing foo will NOT cause an error even if the parent has not handler, but it still might be useful to know (i.e. to control say a save button, but only if the parent is looking for you to do the save)
Can be added with the following patch in the HyperComponent base class:
class << self
def accepts_list
@accepts_list ||= {}
end
def fires(name, opts = {})
aka = opts[:alias] || "#{name}!"
name = if name =~ /^<(.+)>$/
name.gsub(/^<(.+)>$/, '\1')
elsif Hyperstack::Component::Event::BUILT_IN_EVENTS.include?("on#{name.event_camelize}")
"on#{name.event_camelize}"
else
"on_#{name}"
end
validator.event(name)
define_method(aka) { |*args| props[name]&.call(*args) }
accepts_list[opts[:alias] || aka.chomp('!')] = name
end
end
def accepts?(aka)
props[self.class.accepts_list[aka]]
end
- Lingua principale
- JavaScript
- Stelle
- 538
- Fork
- 41
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di hyperstack-org/hyperstack
-
expose_as_operations method Apertaenhancement needs doc
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
hyperstack-org/hyperstack#359 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
hyperstack-org/hyperstack#267 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
hyperstack-org/hyperstack#457 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
hyperstack-org/hyperstack#456 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 15/100
hyperstack-org/hyperstack#455 · 2 commenti ·
Tutte le issue di hyperstack-org/hyperstack
Issue simili
-
ai-observability bug team/ai-observability
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
AllTheMods/ATM-10-L#19 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
SignalK/n2k-signalk#345 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
JuliaPluto/PlutoPlotly.jl#72 ·