問題タブ [ngcomponentrouter]

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.

0 投票する
2 に答える
3138 参照

angularjs - AngularJS 1.5 ngComponentRouter

(ngNewRouter現在は という名前ngComponentRouterになっています) は 1.4 にあるはずでしたが、遅れており、現在は 1.5 に入るはずです (私が理解しているように)。ただし、1.5 beta2 パッケージには含まれていません。angular1_router には githubが表示されますが、ビルドされたモジュールが2.0 アルファパッケージに含まれていることもわかりません。

  1. 新しいルーターが実際に 1.5 リリースに含まれるかどうか知っている人はいますか?
  2. どこかにホストされている新しいルーターの現在のビルドはありますか? コンパイルされた js のコピーをランダム プランカーから見つけることができましたが、自分でソースをコンパイルすることはできませんでした (node-gyp と msbuild の問題で、まだ作業中です)。
  3. 新しいコンポーネント ルーターに関する最新のドキュメントや動作サンプルを知っている人はいますか? 私がこれまでに見つけた最高のサイトはかなり近いものです (2 月に公開されたと書かれていますが、明らかに更新されているのではngComponentRouterなく使用されています)。ngNewRouterルートをロードしていますが、restrict を「A」に設定して (1.5 の新しい「コンポーネント」ラッパーを最適に使用して) ディレクティブとして実際に作成する必要があることを発見しました (これは理解するのが楽しかったです)。
0 投票する
1 に答える
428 参照

angularjs - ルートで余分なハッシュを処理する方法は? (AngularJS 1.5 + 新しい/コンポーネント ルーター)

新しいコンポーネント ルーター ビットを備えた Angular 1.5 を使用してアプリを構築しようとしています。少し特殊なケースに遭遇したので、それを回避する方法があるかどうか疑問に思っています。

主なプレーヤー

  • IdentityServer v2 : 現在、クライアントはこれを OAuth に使用しています。この問題の一部を引き起こします。これはレガシーであり、その使用法を制御することはできません。
  • フロントエンド フレームワークとしてAngularJS 1.5 。
  • ngComponentRouter と呼ばれる新しい angular routerは、今では信じられますか? 私たちは、このスタイルが Angular v1.5 と Angular v2 の間の橋渡しに役立つと考えており、移植も簡単でした。
  • OAuth 暗黙的フローのラッパーとしてのoauth-ng ..
  • 古いブラウザー: IE9+ をサポートする必要があるという意味で、Angular の HTML5 モードを使用できないことを意味します。

目標

次のような URL を取得したいと考えていますhttp://mysite/#!/auth/#auth_token=xyz123(構造は制御下にありません。たとえば、2 番目のハッシュを削除できません)。

  • 実際の認証コントローラーに入れる
  • パラメータを介して、または を介し​​て直接、auth_token 値を使用できるようにします$location。(現在、コントローラーに到達する前にスクラブされています)。

背景・問題点

クライアントには、IdentityServer v2 を使用している中央ログイン システムがあります。私が理解している限りでは、IdSrv v2 からトークンをリクエストする#auth_token=xyz123と、リダイレクト URL に追加して応答します。あなたが持っていると思ったときに書き戻されたmy.com/login.htmlため、login.html#auth_token=xyz123.

ただし、すでにハッシュを使用している Angular アプリでは、URL が最終的にmysite.com/#/auth#auth_token=xyz123.

ご想像のとおり、これは Angular を怒らせます。これをコンポーネントルーターの下で機能させる方法をまだ見つけられていません。

古いルーターとの連携方法

oauth -ng docsに従って、html5 を有効にせずに古いルーターを使用していた場合は、次のようにします。

試したこと

  • 同様の方法でコンポーネント ルートを定義します。コンポーネント ルーターで許可されていないように見える が/access_token=:accessToken含まれているため、これは機能しませんでした。=
  • IdentityServer v2 で応答の形式を変更できるかどうかを確認します。それは可能ではないようです。応答は にハードコードされているよう[URL we define]#auth_token=xyz123です。
  • 他のハッシュなどを使用して URL を偽造します。一般的に、悪い/一貫性のない動作が発生します。

私たちの選択肢は何だと思いますか

  • キャッチオール / 見つからないコントローラーを使用します。ルートを まで通過させれば、/**からトークン値を取得できます$location。しかし、それは一種のグロスです。私たちはそれを避けたいです。
  • 完全な URL をコントローラに取得する方法を見つけます。ルートをキャプチャしてコントローラーに渡すことはできますが、その時点では URL を使用できません。
  • 古いルーターまたは ui-router の使用に戻ります (この時点ではやりたくありません)。

私たちを正しい方向に向けることができるものは何でも大歓迎です!

0 投票する
2 に答える
3004 参照

angularjs - ルートルーターでAngular 1.5 $routerOnActivate

ログインしていない場合、ユーザーが到達しようとしているコンポーネントに進む前に、ユーザーが適切にログインしていることを確認したい.ログインするように送信します。

私の考えは$routerOnActivate、ルートルーターでチェックインすることです。私にとっては、サブルートの問題を解決するものです。

ただし、何かをログに記録しようとすると、何も起こらないようです。例:

this.$routerOnActivaterouteConfigで指定されたコンポーネントのいずれかに配置すると、同じコードが機能します。ただし、明らかに、すべてのコンポーネントで同じチェックを行うのではなく、グローバルに一度解決したいと考えています。

1.5のアプローチは何ですか?

0 投票する
2 に答える
245 参照

javascript - angular 1.5のphantomjsコンポーネントテストでnglinkが機能しない

私はnavbarコンポーネントを持っています:

テストはなくても問題なく実行ng-link="['NewStockCount']"されますが、追加するとエラーで失敗します

ReferenceError: 変数が見つかりません: マップ (2166 行目) RouteRegistry@/home/femi/fielded/nav-integrated-state-dashboard/bower_components/bower-angular-router/angular1/angular_1_router.js:2166:30

これを修正して合格させるにはどうすればよいですかng-link

0 投票する
1 に答える
307 参照

angularjs - コンポーネントの遅延ロードでAngularコンポーネントルーターを動作させることができません

こんにちは、stackoverflowers の仲間です。新しいコンポーネント ルーター (ngComponentRouter) を使用して角度コンポーネントの遅延読み込みを実装することに成功することなく、しばらくの間試みてきました。これは、メイン コンポーネントの構成に使用したコードです。

私の最初の問題は、ローダー プロパティに挿入された ocLazyLoad で動作させることができなかったため、メイン コントローラーにロードし、ローダー プロパティで参照したことでした。その後、最終的にローダープロパティ内で動作するようになったとき、実際にコンポーネントをロードするように見えなかったので、このエラーが発生し続けました:

これで、ローダーで明らかに何か間違ったことをしていて、何らかの方法でコンポーネントを登録する必要があることがわかりました。しかし、ローダーのAngularに関するドキュメントが見つからず、新しいルーターでコンポーネントを遅延ロードする人は誰もいなかったので、これをどのように達成できるか本当にわかりませんでした。

これについての助けを本当に感謝しますが、一般的に、ドキュメントとサポートが不足しているAngularコンポーネントルーターを使用するのは時期尚早ではないかと考えています. ですから、他の経験豊富なAngularプログラマーから、この問題についての意見を聞きたいです。

編集:誰もがこの問題について何か洞察を持っていますか?..

0 投票する
2 に答える
198 参照

angularjs - ngComponentRouter CDN はありますか?

ngComponentRouter を持つ Google の公式 CDN はありますか?どこにも見つかりません。