j-Paper
Il componente modifica un documento come una serie di oggetti widget. collegare un percorso modello a quella serie, configurare il repository widget, e utilizzare autosave per scrivere le edizioni indietro al modello.
- La produzione è una semplice struttura
Object Array:[{ id: String, widget: String, newbie: Boolean, changed: Boolean, config: Object }]
- Ristorante dei widget: https://github.com/totaljs/parts/tree/main/paper
Configurazione:
readonly {Number}consente/disabilita la modalità readonly0=disabled,1=partially enabled,2=fully enabledparent {String}opzionale, un elemento parentale per min-altezza (default:null)margin {Number}margine aggiuntiva per min-altezza (default:0)- I cambiamenti di
autosave {Boolean}vengono serializzati in base al percorso automaticamente widgets {String}un collegamento ai widget (default: Componentator CDN)- può contenere più indirizzi divisi dal comma
mywidget1.html,/mywidget2.html,etc.. - o si può tenere Struttura del CDN
- può contenere più indirizzi divisi dal comma
icon {String}un collegamento alfunction(opt, callback)opt.element {jQuery element}- IMPORTANT: chiama l'argomento
callbackse l'icona è stata modificata nell'elemento
link {String}un collegamento alfunction(opt)opt.element {jQuery element}opt.href {String}opt.target {String}opt.widget {Object}per un widget
command {String}un collegamento alfunction(cmd)cmd.widget {Object}: un widget temporaneocmd.widgets {Array}un elenco di widget registraticmd.remove() {Function}rimuove il widgetcmd.append(name)sostituisce il widget temporaneo con un nuovo widget (nome del widgetname)
format {String}un collegamento alfunction(toolbar)toolbarpuò esserenulltoolbar.element {jQuery element}un elemento attualetoolbar.node {HTML element}un elemento attualetoolbar.widget {Object}per un widgettoolbar.style {Object}contiene uno stile attuale, ad esempiobold: 1, link: 1
upload {String}un collegamento alfunction(opt, callback)opt.accept {String}opzionaleopt.files {FileList}opzionaleopt.multiple {Boolean}opzionale, predefinito:falseopt.width {Number}opzionaleopt.height {Number}opzionale- Importante è:
callbackL'argomento deve essere eseguito dopo l'invio con ilfiles {Array}Argomento
change {String}un collegamento alfunction(change)- Il
change.id {String} change.block {String}un identificatore di bloccochange.blockprev {String}un identificatore di blocco precedentechange.widget {String}di un widget- Tipo di funzionamento
change.type {String}(inserire, aggiornare, rimuovere)
- Il
contextmenu {String}un collegamento alfunction(widget)quando l'utente ha premuto il pulsante del mouse destro sul widgetcheck {String}un collegamento alfunction(widget)che decide se abilitare l'editing o menoplaceholder {String}un locatore per il widget HTML predefinito (predefinita:Press / for adding rich content)
Metodi:
component.save(function(data, ischange) {per risparmiare contenuticomponent.import(url or url_array, [callback])per l'importazione di widget aggiuntivicomponent.notify(event, [a], [b], [c], [d])emette eventi in ogni widget
Buono sapere:
Il componente crea una variabile globale chiamata window.papercache {Object} utilizzata da tutti i casi di j-Paper.
- il componente confronta il contenuto quando si cambiano i dati, in modo da poter modificare i dati in tempo reale
- Il componente assegna (in forma) la classe
paper-yourwidgetnamea ogni elemento widget - Classi HTML riservati
readonly,widget,selected- Utilizzo in linea:
.readonly .paper-yourwidgetname { ... }
- Utilizzo in linea:
htmlelement.$widget {Object}contiene un widget- Il metodo
widget.remove()rimuoverà il widget
- Il metodo
Scontri in testo Edit:
CMD + msottolinea il testoCMD + lcrea un collegamentoCMD + paggiunge un'iconaCMD + bIl coraggioCMD + iItalianoCMD + usottolineato
Buono sapere:
- L'attribuzione
[data-prevent]può prevenire l'evento cliccato nel widget
Utilizzo
<ui-component name="paper" path="form.widgets"
config="autosave:true;widgets:/paper/db.json"></ui-component>
<script>
SET('form.widgets', []);
function saveDocument() {
SETTER('paper/save', function(widgets) {
console.log(widgets);
});
}
</script>Servite l'indice widget su /paper/db.json e i suoi file widget dalla vostra applicazione.
La fonte: Componenti di Total.jsCopyright Peter Širka e contribuenti. La mia licenza.