Wrapper function for creating plugins
I maintainer di solito rispondono entro 2 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- javascript
- Ambito
- tooling
Direzione di ricerca
Inizia esaminando l’architettura dei plugin esistente e le discussioni correlate nelle issue #1061 e #780. L’issue propone diverse modifiche possibili — documentazione introduttiva, criteri di accettazione, isolamento degli errori, esposizione della versione e controlli di compatibilità — quindi l’ambito e i criteri di completamento devono essere concordati prima dell’implementazione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Another v5 feature we should consider is tweaking the docisfy plugin architecture to be more resilient. This warrants further discussion, but here are two ideas worth considering:
-
Provide a docisfy plugin "starter" or a sample repo to use as a starting point.
This would make life much easier for the community and help enforce acceptance criters (below).
-
Define acceptance criteria for all docsify plugins.
This is critical for docsify because unlike static sites, a docsify-powered site requires Javascript to render content. If a docsify plugin throws an error, it is almost certain that site functionality will be broken.
Here are a few idea for acceptance criteria:
- Specify the version of ECMAScript plugin developers should target. For docsify v4.x, ES5 is the required target to ensure IE11 support. This means dev must either author their plugin with ES5 syntax or transpile their code from ES6+ to ES5. For docsify v5, we'll have to look at our supported browser list to determine the appropriate ECMAScript version to target.
- Plugin code must be wrapped in a
try { ... } catch(err) { ...}statement to prevent a plugin error from breaking a site. - Plugins must make their version number accessible to other plugins for interoperability. Docsify addons like docsify-themeable and docsify-tabs already do this by adding an object to the global
$doscifyobject ($docsify.tabsand$docsify.themeable) with avaluekey and value. The goal is to allow both docsify and other plugins to determine which plugins are active and, if necessary, modify their behavior as needed. - Plugins must specify a compatible docsify version to prevent breaking sites when a new version of docsify is released. For example, consider a v4 site that is configured to load the latest version of docsify and multiple plugins. If docsify v5 is released using the same URLs, the v4 site will automatically be "upgraded" to v5 but will likely break as a result of trying to load v4 plugins. This safeguard would allow docsify (or the plugin itself) to determine if it is safe to run the plugin before doing so, which would at least allow the site to load and function properly (albeit without incompatible plugin functionality). This wouldn't be necessary if users locked their docsify, theme, and plugin CDN URLs to a major version (see #780), but since they don't a safeguard like this is necessary.
Just some ideas to get started.
Originally posted by @jhildenbiddle in https://github.com/docsifyjs/docsify/issues/1061#issuecomment-641731543
- Lingua principale
- JavaScript
- Stelle
- 31.5k
- Fork
- 5.8k
- Merge medio
- 2g 14h
- PR unite (30g)
- 5
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi 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 docsifyjs/docsify
-
Query parameter values are truncated at a second equals signForse già presa @xu91102 l’ha presa 23 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 2 giorni
-
Bullet points beginning with inline math: subsequent text formatting not recognised correctlyApertabug Triage
Difficoltà 3/5 1-2 giorni Idoneità per principianti 66/100
I maintainer di solito rispondono entro 2 giorni
-
Cached AJAX responses lose status metadata exposed through vm.route.responseForse già presa @xu91102 l’ha presa 23 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
I maintainer di solito rispondono entro 2 giorni
-
In the Edge browser, the character `{docsify-updated}` is not replacedForse di nuovo libera @AmanUllah687 l’ha presa 76 giorni fa e non c’è nessuna pull request aperta. Apertawait for information
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
docsifyjs/docsify#2681 · 11 commenti ·
I maintainer di solito rispondono entro 2 giorni
-
Nested/Recursive includesApertafeature request Triage
Difficoltà 4/5 3-5 giorni Idoneità per principianti 38/100
docsifyjs/docsify#2643 · 5 commenti ·
I maintainer di solito rispondono entro 2 giorni
Tutte le issue di docsifyjs/docsify
Issue simili
-
idnits3
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
ietf-tools/idnits#363 ·
I maintainer di solito rispondono entro 1 giorno
-
prototype(verifier_token): map disallowed warning to contraindicated before composite precedence checkForse già presa @drk-ram l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
agentrust-io/trace-spec#582 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 Mezza giornata Idoneità per principianti 72/100
TheOdinProject/curriculum#31479 ·
I maintainer di solito rispondono entro 1 giorno
-
chore
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
SignalK/n2k-signalk#368 ·
I maintainer di solito rispondono entro 1 giorno