/ / Papierdialog mit Papiereinzug schließt bei Eingabe - Polymer, Papierelemente

Papierdialog mit Papiereingabe schließt am Eingang - Polymer, Papierelemente

Ich habe ein paper-dialog und in diesem Dialog habe ich eine paper-input Mit einem vordefinierten Wert und wenn ich den Wert ändern möchte, wird mein Dialog ohne erkennbaren Grund geschlossen.

Mein Code:

<template>
<paper-dialog entry-animation="scale-up-animation"
exit-animation="fade-out-animation"
id="bookDetailDialog"
class="bookDialog"
opened="{{opened}}">
<paper-item style="padding-left: 11px;">
<paper-icon-button
icon="icons:arrow-back"
on-tap="closeDialog">
</paper-icon-button>
</paper-item>
<paper-item>
<paper-input label="Author" value="{{book.author}}"></paper-input>
</paper-item>
...
<paper-item>
<paper-checkbox checked="{{book.dedication}}">Dedication</paper-checkbox>
</paper-item>
<paper-button raised>Lent</paper-button>
<paper-button raised>Sell</paper-button>
</paper-dialog>
</template>
<script>
Polymer({

is: "book-dialog",

properties: {
book: {
notify: true
},
opened: {
type: Boolean,
notify: true
}
},

closeDialog: function () {
this.opened = false;
this.book = undefined;
}
});
</script>

EDIT: Hier verwende ich mein Element:

<dom-module id="books-list">
<style>
span {
flex-basis: 100%;
margin: auto;
}
</style>
<template>
<book-dialog opened="{{opened}}" book="{{selected}}"></book-dialog>
<iron-list
id="bookList"
items="{{books}}"
as="book"
selection-enabled
selected-item="{{selected}}">
<template>
<paper-item>
<span>{{book.id}}</span>
<span>{{book.author}}</span>
<span>{{book.original}}</span>
<span>{{book.language}}</span>
<span>{{book.status}}</span>
</paper-item>
</template>
</iron-list>
</template>
<script>
Polymer({
is: "books-list",

properties: {
books: {
notify: true
},
selected: {
notify: true,
obsever: "_selectionChanged"
},
opened: {
notify: true,
type: Boolean
}
},

observers: [
"_selectionChanged(selected)"
],

_selectionChanged: function () {
if (this.get("selected.id") === ""
|| this.get("selected.id") === undefined) {
this.set("opened", false);
} else {
this.set("opened", true);
}
},

_openAddBookDialog: function () {
this.fire("add-book");
}

});
</script>
</dom-module>

BEARBEITEN: Ich denke es hat etwas mit dem zu tun iron-list und das die selected Attributänderungen ...

Antworten:

0 für die Antwort № 1

Ich bin nicht sicher, ob Sie immer noch danach suchen, aber ich werde dies für jeden bereitstellen, der über diese Frage stolpert.
Es gibt eine Erklärung für ein verwandtes Problem bezüglich der Papiereingabe mit Papierdialogfeld. PolymerElements / Papiereingabe Ausgabe # 263

Grundsätzlich müssen Sie das Klickereignis von erledigen paper-input, so dass es sich nicht ausbreitet, um das zu schließen paper-dialog.
Hoffentlich hilft das.


Verwandte Fragen


Kommentare (0)

Einen Kommentar hinzufügen