問題タブ [flow-router]
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.
meteor - Meteor で Flow Router と Iron Router を使用しますか?
Meteor アプリでクライアント側のルーティングにフロー ルーターを使用しています。Webhook を公開するには、サーバー側でルーターを使用する必要があります。そのため、Iron ルーターを接続しましたが、Iron ルーターは、アプリでルートを構成する必要があると不平を言う html をアプリに挿入するようになりました。少なくとも 1 つのクライアント側ルートが存在する必要があると考えていると思います。次のように、サーバーに鉄のルータールートを1つ実装しました。
落ち着くように鉄のルーターに追加できる設定はありますか?
javascript - 流星のkadira:flow-routerよりもreact-routerを使用する利点は何ですか
私は隕石と反応が初めてです。meteor と react を使用して投票ベースのプロジェクトを開発するためのベスト プラクティスを探していました。私がインターネットで見つけようとした問題の 1 つは、Meteor でルーターの 2 つのオプションのいずれかを使用することの長所と短所です。
kadira:flow-router の実装はかなり簡単に思えますが、代わりに react-router を実装しているプロジェクトが github でたくさん見られます。
meteor の両方のルーターパッケージの比較について何か考えはありますか?
javascript - FlowRouter を Meteor 1.3.1 と「インポート」で使用する方法
Meteor アプリにいくつかの簡単なルートを追加しようとしています。FlowRouter で遊ぶのは初めてです。私は次のようにインストールしました:
次に、lib/routes.js
これを含むファイルを作成しました。
このimports/ui/body.js
ファイルは、次のように他のいくつかのテンプレートをロードします。
そしてmoment.js
imports ./moment.html
、次のように:
しかし、訪問時にこのエラーが発生します/
:
import '../imports/ui/body.js
理解しておくべき重要なことは、client/main.js
ファイルに入力するだけで FlowRouter を完全にバイパスすると、すべてが正常に機能するということです。
何か案は?助けていただければ幸いです、ありがとう!
meteor - Meteor & Flow Router: 動的に生成されたパスを「アクティブ」としてマーク
言うまでもなく、Meteor での私の経験は不足しています。私は Rails のバックグラウンドを持っており、Meteor よりも多くのロジック (およびマジック) をビューで実行できます。
状況: のようなルートがいくつかあります/things/:_id
。そのルートに「もの」という名前を付けました。これはthing
、ユーザーが所有する多数のルートのうちの1 つだけを示しているためthings
です。
sidebar
ご覧のとおり、ナビゲーションを簡単にするために、ユーザーが所有するすべてのものを一覧表示するために作成したテンプレートも読み込んでいます。そのテンプレートthingsListOnThing
は、この質問の対象です。
要点を理解しますか?things
次のようにactive
使用して、ユーザーの完全なリストを含むテンプレートを表示するルートをマークできますzimme:active-route
。
このパッケージは素晴らしいですが、現在のパスがアクティブなパスと一致するページだけでなく、/things/:_id
個々のものへのすべてのリンクがis-active
任意のページにあるため、次のようなルートでは役に立ちません。thing
:_id
_id
thing
私は本当にここで立ち往生しています。私の最初の推測では、テンプレート ヘルパーを使用することになりますが、どこから始めればよいかわかりません。
必要に応じて、必要なコードをアップロードしてください。私が達成しようとしていることを理解するために、おそらく私のコードをすべて見る必要はないほど一般的な質問だと思いました。
javascript - 反応jsのメインコンポーネントでの認証
meteor (v1.3) を使用してユーザーベースのアプリケーションを作成したいと考えています。したがって、認証と承認はアプリの中核です。フロールーターの作成者が書いたこの優れた例に出くわしました。これは、フロールーターで認証と承認を行う方法を説明しています。
https://github.com/alanning/meteor-roles/tree/master/examples/flow-router-advanced ただし、この例ではデモンストレーションに Blaze を使用しています。反応で同じことを行うことが可能かどうかを知りたいです。
反応するように変換するために私にとって最も難しい部分は、テンプレートレベルを使用してサイト全体の認証を行うことです。この時点で、どのように反応することができるのかわかりません。
メイン レイアウト コンポーネントがあるとします。
このレイアウトで認証を行うにはどうすればよいですか? ただし、ルーターでできることはわかっていますが、フロールーターの全体的なポイントは、非反応的で予測可能です。フロー ルーターの作成者は、上記の例と同様に、テンプレート レイヤーで行うことも推奨しています。
React は私にとって新しいものです。React の概念を誤解している可能性があります。したがって、これが理想的な方法ではないと思われる場合は、正しい道に案内してください。
javascript - Meteor と Redux で Mantra を使用するには?
私はマントラに入ろうとしていて、それを反応、還元、フロールーターで使いたいと思っていました。しかし、今回はreduxを正しく取得できません。
Github: https://github.com/saschb2b/kickstart-mantrajs-meteor-react
フロールーターにコンテキストとアクションを注入しました
モジュール/コア/routes.jsx
ただし、アクションをディスパッチするときは、目的の値の代わりに完全なコンテキストが使用されます。modules/core/componentsDefaultToolbar.jsx:42
呼び出す必要があります{type: "MENU_TOGGLE", open: false}
代わりに
{type: "MENU_TOGGLE", open: Object}
、オブジェクトが Meteor、Tracker、FlowRouter、および Store の完全なコンテキストである場所を呼び出します
私のプロジェクトのクローンを作成し、/news に移動し、ウィンドウのサイズを <1024 (バーガー ボタンを表示) に変更して、バーガー ボタンをクリックすることで、これを再現できます。コンソールが大量に吐き出すはずです。
redux を間違って使用していますか? ストアが正しく初期化されていませんか? 代替案やヒントがあれば、すべて受け取ります
編集:アクションクリエーターの使用方法に関する私の方法を変更する必要があります。これまでのところ良さそうです。しかし、私の状態で何かが変更された場合、私のコンポーネントは再レンダリングされません。何か案が?最新の変更はリポジトリにあります
javascript - Meteor がクライアントのコレクションから登録解除する
外部ライブラリを使用せずにアプリにページネーションを実装しようとしていますが、問題が発生しています。これに関する他のトピックをいくつか見ましたが、それらは私のユースケースには当てはまらないようでした (またはまったく別の問題が発生していました)。これが私のテンプレートです。
基本的には、ユーザーがボタンの 1 つをクリックすると、サーバーがレコード セット内の次のアイテムを取得し、「理想的には」一致するようにサブスクリプションを更新することになっています。サブスクリプション レコード セットを希望どおりにするのに問題があります。Meteor は新しいサブスクリプションごとにレコードを収集し続けているようです。
現在、ボタンをクリックすると、Meteor がFlowRouter
params への変更を確認し、template.autorun
(下記) を実行していると確信しています。この問題を解決するために私が最初に考えたのは、サブスクリプションMeteor.subscribe()
に返さhandle
れた を使用することでした。handle.stop()
残念ながら、この関数内では、 と の両方this.subscribe()
がサブスクリプションMeteor.subscribe()
に使用できる実際のハンドルをhandle.stop()
返さず、代わりにsubscriptionId
文字列を返すようです。この文字列の使い方、または使用できるかどうかさえわかりません。
私はこれを正しく行っていますか?これについて正しい方向に私を向ける助けは非常に素晴らしいでしょう-私は数日間ページネーションを機能させようとしてきましたが、ハードルにぶつかり続けています.
javascript - FlowRouter - HTML テンプレートへのコンテンツの挿入
meteor-react を学習しようとしていますが、FlowRouter を使用してコンテンツを HTML テンプレート ページに挿入する方法について質問があります。
すべてが正しくインポートされたと仮定しましょう。これは関連するコードです:
ルート.jsx
index.jsx - MainLayoutCtx が指している場所
index.jsx では、{content = () => null} . これはコンテンツがパラメータを持たずnullを出力するオブジェクトリテラルということではないでしょうか?
でもroutes.jsxでコンテンツが渡されているときは() => (/Post postId={postId}/>)ということで、そのコンテンツはpostIdをpropとして渡されたPostを出力しているのではないでしょうか?
これはindex.jsxが期待しているものとどのように一致しますか?