問題タブ [polymer-starter-kit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
polymer - ポリマー スターター キットの URL をマルチレベル パスで開く
スターター キットで「gulp serve」を使用して実行し、localhost:5000/register/user などの複数レベルのパスを含む URL を入力すると失敗します。基本的に、localhost:5000/elements/elements.html ではなく、localhost:5000/register/elements/elements.html で elements.html を検索します。
ただし、別のページからクリックしてリンクを開くと、機能します。URLを入力したときにこれを機能させる方法はありますか?
json - プリキャッシュのスキップ: null` のプロパティ 'concat' を読み取ることができません
これが私の質問です:「プリキャッシュのスキップ」を取り除き、https: //laoadventist.info/beta/r から入ってくるすべてのものをプリキャッシュ リストとしてキャッシュするにはどうすればよいでしょうか?
precache="https://laoadventist.info/beta/r"
また、データを取得して代わりに返す関数に設定するのは正しいですか、それとも設定する必要がありますか?
Skipping precaching: Cannot read property 'concat' of null
My Polymer App
を使用するとコンソールに出てきます
私は、このような URL を正しく設定できると想定していますよね?
laravel 5.1 から json の結果をロードして、プリキャッシュを設定しようとしています...最もエレガントではないことはわかっていますが、Polymer、キャッシュ、サービスワーカーなどは初めてで、このアプリを学習の機会。結局のところ、少し違うかもしれませんが、今のところはすべてをロードしたいだけです。:)
ユーザーがオフライン時にこのアプリを完全に利用できるように、すべてのデータを事前にキャッシュしたいと考えています (後で、必要なものだけをロードして json 要求のロードを事前にキャッシュする必要がないように設定しますが、本ごとのように-しかしそれは後でです)。
.htaccess - ポリマー ルートが機能しない ポリマー スターター キット
ポリマースターターキットのクローンを作成しましたが、完全に正常に機能しています。
そのため、プレースホルダー ルートには http://localhost:5000/users/Robというページがあります。rob リンクをクリックしてユーザー ページから Rob ページに移動すると、上記の URL が機能します。
しかし、ブラウザでhttp://localhost:5000/users/Robに直接貼り付けてEnter キーを押すと、機能しません。
上記は、htaccess を使用することで解決される可能性があると思います。しかし、方法がわかりませんでした。
以下は私の.htaccessコードです
polymer - ルーターからdom要素へのポリマーデータ
ポリマー 1.0 から始めて、以下に示すように新しいルート エンドポイントを作成しました。
したがって、users/bob に移動すると、ルート「user-info」に移動します
私のindex.htmlでは、ルートは以下のように定義されています
ここで、web-homepage はカスタム要素です。
カスタム要素は以下のように定義されています
ルートパラメータの値「:name」、つまり準備完了関数内の bob を取得する方法はありますか?
polymer - PolymerフォームをPHPに送信してレスポンスを表示する方法
Polymer 1.0 を使用して、簡単な連絡フォームを送信するための鉄のフォームをセットアップしました。アイデアは、PHP を使用してフォームをデータベース テーブルに送信し、PHP 側からの応答を更新せずにブラウザーに表示することです (典型的な AJAX)。しかし、私はPolymer環境に夢中になっています-これを行う正しい方法があるはずですが、何時間もの検索と調整は実りがありませんでした.
このプロジェクトは、スクリプト (app.js) を使用してイベント リスナーなどを追加する Polymer Starter Kit (lite) を使用して開始しました。これまでのところ、私はその機能を壊していませんが、ドキュメンテーションのすべての例はこのようにはしていません.
これが私がこれまでに得たものです。あなたが提供できるアドバイスをありがとう。
index.html
...
app.js
失敗した方法 1
以下に示すように、 index.htmlにiron-ajax要素を追加し、app.jsから参照してみました。残念ながら、イベント リスナーを追加しようとすると、アプリ全体がクラッシュします。同じ方法でイベントリスナーを追加する app.js には他にも多くの部分があるため、奇妙に思えます。
index.html
app.js
失敗した方法 2
SOでThis Answerを見つけて、iron-form-response
イベントを試すことにしました。私が今受け取った出力は です[object HTMLElement]
。これは少なくとも何かですが、実際に機能しているかどうかはわかりません。
他のすべては同じままで、フォームのターゲットをphpスクリプトを指すように変更し、app.jsにあるものを次のものに置き換えました。
app.js
私は近づいていますか?
あきらめない
上記の 2 番目の失敗した方法を使用すると、'iron-form-response' イベントをリッスンすると、イベントが発生するため、iron-form がリクエストを行っているように見えます。
ただし、返される唯一のことは、[object HTMLElement]
それをどうするかわかりません。そのプロパティのいくつかを吐き出そうとしました (developer.mozilla.org で文書化されている - .title
、.properties
、.style
など) が、それらは空に見えます。iron-form は本当に HTMLElement オブジェクトを返しますか、それとも間違いですか? フォームを送信しているPHPスクリプトから、通常のXMLHttpRequest
. 鉄の形がこれを何らかの形で物体に圧縮した場合、それを再び引き出す方法はありますか?
TL;DR
この全体が要約すると次のようになると思います:iron-form-request
私の鉄のフォームが index.html にあり、index.html が app.js によってブートストラップされている場合、イベント リスナー (の場合)を適切に追加するにはどうすればよいですか? 1.0 スターター キット?
さらに単純化:要素を作成していない (単に使用している) ときに、Polymer のシャドウ DOM にイベント リスナーを適切に追加するにはどうすればよいですか?
バグ?
以下のuser2422321のすばらしい回答の助けを借りて、鉄の要求が実行され、成功した鉄の要求応答が受信されます。ただし、「succeeded」が true を返し、エラーがなく、XHR が完全に解決された場合でも、その「response」プロパティは NULL を返します。「get」メソッドと「post」メソッドの両方がテストされ、同じ NULL の結果が得られました。
あまり注目されていませんが、10 日前に GitHub に正確に記録されたこれらの症状に一致するバグがあったようです: Issue 83。これは残念ですが、バグのようです。要素自体が修復されるまで、これを機能させる方法があるとは確信していません。
IRON-REQUEST は何を見たい?!
これをさらに調べてみると、responseURL が正しく、statusText が「OK」であるにもかかわらず、XHR でさえ直接「null」を返していることがわかります。実行しようとしている実際の PHP スクリプト (現在は "Hello World" を出力するだけ) に問題があるのではないかと考え始めています。
iron-form-request
結果に特定の形式またはデータ型が必要ですか? PHPファイルに追加しようとしheader('Content-Type: text/plain');
た後、検証済みのJSON文字列としてフォーマットしようとしましたが、応答はまだnull
. 何も機能しないようです。
古い学校の直接XMLHttpRequest
の仕事は通常... リクエストが送信される前に、鉄のフォームが何かを改ざんしていますか?
iron-form-error をキャッチするハンドラを設定しましたが、何も受信されません。応答のすべての情報によると、すべてが完璧です。ただ... null応答。何度も何度も…これは信じられないほどイライラします。
解決!(ちょっと)
さて、私は絶望的になったので、鉄のソースコード自体をざっと調べ始めました。現時点では、iron-form はまだ多少不具合があり、応答が適切にフォーマットされた json である場合にのみコンテンツを返すようです。iron-request.htmlでは、次のタイプを許可しているように見えますが、だまされてはいけません。私はjsonを機能させることしかできませんでした-残りは最終的に一致すると思います。
- json (アプリケーション/json)
- テキスト (テキスト/プレーン)
- html (テキスト/html)
- xml (アプリケーション/xml)
- arraybuffer (アプリケーション/オクテット ストリーム)
したがって、当面は、応答を JSON としてフォーマットし、一致するように DOCTYPE 宣言を含める必要があります。
私の場合、これは次のようになります (私を助けてくれた user2422321 に感謝します):
index.php
app.js
そして最後に、これがパズルの重要な最後のピースでした。このファイルが出力するコンテンツが非常に重要であるとは、以前は考えていませんでした。なぜなら、XMLHttpRequestsは、ファイルが吐き出したものをそのまま返すからです。
contactus.php
これらすべての部品が配置されると、動作し、 contactus.phpe.detail.response
からエコーした JSON 応答が含まれます。
javascript - カスタム要素 Polymer Facebook プラグイン統合 (javascript sdk) の問題
「ポリマー」サイトのいくつかの機能を修正していますが、Facebook ページの統合に問題があります。ボタンをクリックした結果として、JavaScriptでインスタンス化する必要があります。javascript で facebook SDK をインポートすると、要素で FB.XFBML.parse() も起動しますが、何も起こりません。エラーなし。レンダリングなし。どうすれば解決できますか?この facebook プラグインを index.html で直接使用する前に、それが機能していたので、カスタム要素内で使用したいと考えています。</p>
bash - Polymer 1.0: コマンド ラインから Polymer Starter Kit をインストールするとエラーが発生する
Polymer Starter Kit をインストールできるようにするにはどうすればよいですか?
コマンド:
次のエラーがスローされます。
バージョン構成
- マックブックエア
- OS X v.10.10.5 ヨセミテ
ツールチェーン:
polymer - Polymer Starter Kit - Service Worker を有効にしようとすると ERR_FILE_EXISTS
こちらの手順に従って、ポリマー スターター キットのクローンでオフライン サポート (サービス ワーカー) を有効にしようとしています。
ただし、gulpfile.js、index.html、elements.htmlに変更を加えた後、ページを更新するたびに次のエラーが発生し続けます。
また、Chrome デベロッパー ツールでスロットリング設定をオフラインに変更して更新すると、ページに「インターネットに接続できません」というメッセージが表示されるため、明らかにキャッシュが機能していません。
他に何かしなければならないことはありますか?
更新:エラー メッセージでURL (つまり、http://localhost:5000/bower_components/platinum-sw/platinum-sw-register.html&clientsClaim=true&skipWaiting=true&version=1.0 ) をデコードし、Chrome で実行したところ、404エラーが発生しました. .html の後のすべてを削除すると、ファイルは見つかります。