j-Paper
Die Komponente bearbeitet ein Dokument als eine Reihe von Widget-Objekten.Binden Sie einen Modellweg zu dieser Reihe, konfigurieren Sie das Widget Repository und verwenden Sie AutoSave, um Bearbeitungen zurück zum Modell zu schreiben.
- Die Produktion ist eine einfache
Object ArrayStruktur:[{ id: String, widget: String, newbie: Boolean, changed: Boolean, config: Object }]
- Widgets-Rahmen: https://github.com/totaljs/parts/tree/main/paper
Konfiguration:
readonly {Number}ermöglicht / abgeschaltet readonly-Modus0=disabled,1=partially enabled,2=fully enabledparent {String}optionale, ein Elternteil für Min-Höhe (Default:null)margin {Number}zusätzliche Marge für Min-Höhe (Default:0)autosave {Boolean}-Veränderungen werden nach dem Weg automatisch serialisiertwidgets {String}eine Verbindung zu den Widgets (Default: Componentator CDN)- Es kann mehrere Adressen enthalten, die durch den Comma
mywidget1.html,/mywidget2.html,etc..geteilt werden - Oder Sie können halten CDN Struktur
- Es kann mehrere Adressen enthalten, die durch den Comma
icon {String}ein Link zumfunction(opt, callback)opt.element {jQuery element}- WELT: rufen Sie das
callbackArgument an, wenn die Ikon im Element geändert wurde
link {String}ein Link zumfunction(opt)opt.element {jQuery element}opt.href {String}opt.target {String}opt.widget {Object}ein Widget-Instanzen
command {String}ein Link zumfunction(cmd)cmd.widget {Object}ein temporärer Widget-Instanzcmd.widgets {Array}eine Liste der registrierten Widgetscmd.remove() {Function}Entfernen von Widgetcmd.append(name)ersetzt das aktuelle temporäre Widget mit einem neuen Widget (nameName des Widgets)
format {String}ein Link zumfunction(toolbar)toolbarkannnullseintoolbar.element {jQuery element}ein aktuellen Elementtoolbar.node {HTML element}ein aktuellen Elementtoolbar.widget {Object}ein Widget-Instanzentoolbar.style {Object}enthält einen aktuellen Stil, z. B.bold: 1, link: 1
upload {String}ein Link zumfunction(opt, callback)opt.accept {String}optionalopt.files {FileList}optionalopt.multiple {Boolean}optionale, Standard:falseopt.width {Number}optionalopt.height {Number}optional- IMPORTANT:
callbackArgument muss nach der Einladung mit demfiles {Array}Argument ausgeführt werden
change {String}ein Link zumfunction(change)change.id {String}Identifizierungchange.block {String}ein Blockidentifikatorchange.blockprev {String}ein vorheriger Block-Identifikatorchange.widget {String}ein Widget-IDchange.type {String}- Betriebstyp (Sie geben, aktualisieren und entfernen)
contextmenu {String}eine Verbindung zumfunction(widget)wenn der Benutzer den rechten Maus-Taste auf dem Widget drücktecheck {String}eine Verbindung zumfunction(widget), die entscheidet, ob zu bearbeiten oder nichtplaceholder {String}ist ein Standort für das Standard-HTML-Widget (Default:Press / for adding rich content)
Methoden:
component.save(function(data, ischange) {für den Inhaltcomponent.import(url or url_array, [callback])für die Einfuhr von zusätzlichen Widgetscomponent.notify(event, [a], [b], [c], [d])gibt ein Ereignis in jedem Widget
Gut zu wissen:
Die Komponente erzeugt eine globale Variable namens window.papercache {Object}, die von allen j-Paper-Instanzen verwendet wird.
- die Komponente vergleicht den Inhalt, wenn Sie Daten ändern, so dass Sie Daten in Echtzeit ändern können
- die Komponente (in der Form)
paper-yourwidgetname-Klasse an jedes Widget-Element zugeordnet - Reservierte HTML-Klassen
readonly,widget,selected- Weiterverwendung:
.readonly .paper-yourwidgetname { ... }
- Weiterverwendung:
htmlelement.$widget {Object}enthält eine Widget-Instanzwidget.remove()-Methode wird das Widget entfernen
Kurzgeschnitten in Text Edit:
CMD + mzeigt den TextCMD + lschafft einen LinkCMD + pfügt eine Ikon hinzuCMD + bHürdeCMD + iItalienischCMD + uUnterschrift
Gut zu wissen:
[data-prevent]-Attribute kann das Klicksverhalten im Widget verhindern
Nutzung
<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>Stellen Sie den Widget-Index unter /paper/db.json und seine Widget-Dateien aus Ihrer Anwendung bereit. Der Save-Callback empfängt das serialisierte Widget-Array.
Quelle: Total.js Komponenten. Copyright Peter Širka und Mitwirkende. MIT-Lizenz.