Feature: String with metadata mode
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 20/100
- Issue-Typ
- Feature
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- clojure, javascript, react-native
- Bereich
- devtools
Rechercherichtung
Im Issue wird weder eine Implementierungsdatei noch ein Test genannt. Beginne damit, den Pfad js/console.log und die Verarbeitung von Werten durch cljs-devtools nachzuverfolgen, und bewerte anschließend den vorgeschlagenen data-str-Metadatenansatz; abgeschlossen ist die Aufgabe, wenn eine begrenzte Serialisierung ohne cljs-devtools funktioniert und ein installiertes cljs-devtools die zugehörigen Daten untersuchen kann.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
This is a feature idea.
I'm looking for a way to make my js/console.log display cleanly with and without cljs-devtools installed.
Motivating example
Today's job is a react native app. It's not always convenient to turn cljs-devtools on (e.g. two simulators) and it's helpful to look in the simulator logs sometimes (no cljs-devtool rendering).
Problems
- js/console.log with regular clojure data types produces verbose/unreadable strings.
- logging (serializing) large data structures can cause UX lag
Idea
Perhaps cljs-devtools could be adapted to look for metadata associated with a string (or string like) object.
Vaguely something like this could be used to prepare a "console.log friendly string" with some other protocol which cljs-devtools could detect...
(defn data-str [data]
(binding [*print-level* 3 *print-length* 5]
(specify! (pr-str data) IMeta (-meta [_] data)))))
(js/console.log (data-str {:a 1 :b (range 1000)}))
NOTE: this code doesn't work
Goal is to cover two cases
- String form will work in all situations and not take too long to serialize.
- If cljs-devtools is installed you can drill into metadata.
- Vorherrschende Sprache
- Clojure
- Sterne
- 1.1k
- Forks
- 51
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
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 binaryage/cljs-devtools
-
ROOKOffen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 5/100
binaryage/cljs-devtools#82 · 1 Kommentar ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 48/100
binaryage/cljs-devtools#81 ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 48/100
binaryage/cljs-devtools#80 ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
binaryage/cljs-devtools#79 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 35/100
binaryage/cljs-devtools#76 · 1 Kommentar ·
Alle Issues in binaryage/cljs-devtools
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
calcit-lang/calcit#2075 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
Maintainer antworten meist innerhalb von 1 Tag
-
.Needs Triage .Team/Gadget Priority:P3 Type:Bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
metabase/metabase#84431 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
needs triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
Maintainer antworten meist innerhalb von 1 Tag
-
module:db module:terminology-service-local refactoring
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag