2015-08-13 7 views
14

Próbowałem użyć formy żelaza za pomocą metody posta i mam pewne wątpliwości co do tego, jak to działa lub nawet, czy powinienem w ogóle go używać. Więc staram się znaleźć odpowiedź na następujące pytania:Postery polimerowe pytania dotyczące postów

  1. Z tego co rozumiem, żelazo formularz służy jedynie do żądań AJAX, tak aby zwykły słupek (który odświeża stronę), że powinienem nie używaj go, prawda? (Prawda/Fałsz)

  2. Jeśli nie używam is='iron-form', czy istnieje na przykład inny sposób sprawdzania poprawności pól wprowadzania papieru?

  3. (Teraz to mnie najbardziej dezorientuje.) Korzystając z formy żelaza z metodą post, otrzymuję tylko dane formularza jako "formData: [object Object]", co sprawia, że ​​rzeczy są całkowicie bezużyteczne na zapleczu, który nie dostaje elementu formularza wartości kiedykolwiek.

    Takie zachowanie można zaobserwować na stronie demo żelaza formy https://elements.polymer-project.org/elements/iron-form?view=demo:demo/index.html

    Czy istnieje jakiś sposób, aby wysłać wiadomość za pomocą formularza żelaza i utrzymywać regularne zachowanie postu?

na poszukiwaniu na StackOverflow, ten wątek wydaje się dbać o podobnym problemem Sending form with POST method and Polymer iron-form?, chociaż „fix” nie działa na mnie jak I wydają się być przy użyciu wersji 1.0.8.

bower iron-form#^1.0.0 validate 1.0.8 against git://github.com/PolymerElements/iron-form.git#^1.0.0 

Powodem formData: [object Object] Więc wydaje się, że problem jest rozwiązany w żelazo AJAX # 1.0.4 używam altanę z PolymerElements/żelazo elementów jako zależność to tylko uderzenia aż do wersji 1.0.0 z iron-ajax, raz zmusiłem żelazo-ajax do użycia v1.0.4, ładunek z postu wydaje się być poprawiony.

Ten problem jest to, co zawiózł mnie tam https://github.com/PolymerElements/iron-ajax/pull/80

+0

na # 3 patrz https://github.com/brittanyarthur/Server-Side-Code-dynamic-ebsite-/blob/master/nodejs/server.js Metody processPost i-lub processform na potrzeby konsumowania nodejs a POST –

Odpowiedz

2

Powodem punkcie 3), w których żelazo forma przechodzi formData [OBIEKTU]

więc wydaje się, że problem ten rozwiązano w żelaza AJAX # 1.0.4 I Używam altany z PolymerElements/iron-elements jako zależności, która tylko uderza do wersji 1.0.0 z iron-ajax, raz zmusiłem żelazo-ajax do użycia v1.0.4, ładunek z postu wydaje się być poprawiony.

Jest to problem, który zawiózł mnie tam https://github.com/PolymerElements/iron-ajax/pull/80

2
  1. Jest to całkowicie się z korzystaniem z osobna. Jeśli chcesz, aby strona przeładować po sukcesie postu, jednym ze sposobów, aby to zrobić byłoby użyć żelaza ajax on-response metodę i po prostu wywołać funkcję, która odświeża stronę

html

<iron-ajax 
    auto 
    url="http://gdata.youtube.com/feeds/api/videos/" 
    params='{"alt":"json", "q":"chrome"}' 
    handle-as="json" 
    on-response="handleResponse" 
    debounce-duration="300"></iron-ajax> 

js np coś

function handleResponse(){ location.reload(); } 

czy można wykorzystać this idea from robdodson i powielać wszystkich wejściach postać, o każdy element polimer wiążący danych do dopasowania ukryty regularnego elementu formularza.

  1. Istnieje kilka sposobów, tutaj jest jeden http://plnkr.co/edit/2C7KmE?p=preview

    <numbers-input></numbers-input> 
    
    <polymer-element name='numbers-input'> 
        <template> 
        <paper-input-decorator id='myPaperInput' label='Number' error='numbers only' floatingLabel autovalidate> 
         <input is='core-input' pattern='^[0-9]*$'> 
        </paper-input-decorator> 
        </template> 
        <script>Polymer();</script> 
    </polymer-element> 
    
  2. hmm, nie wiem o przyczynie tego. Wydaje się złe demo/błąd. Rzuciłem okiem na kod źródłowy, ale nie widziałem niczego oczywistego. Zastanawiam się, czy rzeczywiście wymagane jest iron-ajax czy coś?https://elements.polymer-project.org/elements/iron-ajax może być

+0

Dziękuję za twój wkład, chociaż punkt 2) był świetnym spojrzeniem, w którym wydaje się, że używasz polimeru 0.5, ale myślę, że technika ta może być z łatwością zastosowana do 1.0 Odnośnie punktu 3), która wydaje się być pewnym niedogodnością, nie tylko dzieje się z demem, ale sam komponent, ponieważ uzyskuję takie same wyniki, co oznacza, że ​​nie ma danych postów w samym poście. – 0Ds0

+0

Tak, twoje pytanie zaintrygowało mnie, ponieważ naprawdę chciałem zagrać więcej z polimerem po I/O roku, ale nadal go wyłączaj. Mam nadzieję, że to pomogło! – wesww

2

@ 2: w którykolwiek paper-input lub iron-input można nazwać validate() kiedy chcesz, aby wymusić sprawdzanie poprawności. Możesz także użyć własnych weryfikatorów na swoich wejściach.

Powiązane problemy