add accepts? method
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 45/100
Rechercherichtung
Beginne bei der HyperComponent-Basisklasse und untersuche die vorhandene fires-Implementierung sowie die Verarbeitung von accepts_list. Füge accepts? hinzu, damit eine Komponente feststellen kann, ob ihr übergeordnetes Element einen Handler für das benannte Ereignis hat, und stelle anschließend sicher, dass das Auslösen eines Ereignisses ohne Handler im übergeordneten Element weiterhin keinen Fehler auslöst.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
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
- Vorherrschende Sprache
- JavaScript
- Sterne
- 538
- Forks
- 41
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus hyperstack-org/hyperstack
-
enhancement needs doc
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
hyperstack-org/hyperstack#359 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
hyperstack-org/hyperstack#267 ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
hyperstack-org/hyperstack#457 ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 35/100
hyperstack-org/hyperstack#456 ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 15/100
hyperstack-org/hyperstack#455 · 2 Kommentare ·
Alle Issues in hyperstack-org/hyperstack
Ähnliche Issues
-
bug customer-eng Durable Agents Inngest status: needs triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
-
optimization optimization:agents-md-curator
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
githubnext/gh-aw-cao#13475 ·
-
[BUG]: "Clear All" in Settings doesn't clear the saved analysis, old data comes back after reload Offenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
AOSSIE-Org/OrgExplorer#253 · 1 Kommentar ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
oxc-project/oxc#26944 ·
-
ai-observability bug team/ai-observability
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100