問題タブ [ember-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.
ember.js - 動的セグメントを持つリソースと、ネストされたルートでのモデルの取得
私は次のルートを持っています:
私の新しいルートでは、新しい App.Group オブジェクトを構築するために、どのイベントに参加しているかを知る必要があります。
したがって、リソースに対応する次のルートがあります。
そして、ルートに対応するもの:
作成時にグループのイベントを指定する必要があります。ただし、GroupsNewRoute では、イベントを取得できないようです。パラメータには含まれませんevent_id
。
ルートの親リソースからモデルを取得するにはどうすればよいですか?
ember.js - ember の linkTo ヘルパーを使用すると、「Uncaught TypeError: Undefined のメソッド 'slice' を呼び出すことができません」
使用:
- ember.js コミット b2e82ae
- ember-data.js コミット 001ba0c
- ハンドルバー-1.0.rc.2.js
これは、最新のルーター API で既に機能していましたが、最新のコミットにアップグレードすると機能しなくなります。これは、ハンドルバーに rc.2 を使用するように指示する最初のアップグレードでもあります。これはヒントになる可能性があります。
todo_itemsテンプレートの解析時にlinkToヘルパーがエラーを発生させます: 。Uncaught TypeError: Cannot call method 'slice' of undefined
linkTo の最初の引数を引用符で囲んでも違いはありません: linkTo "todo_items.todo_item" item
、同じエラーが発生します。
私は何を間違っていますか?
ember.js - 現在のルートの変更をどのように観察できますか?
<title>
場所(ルート)が変わるたびにページのタグを更新したい。の現在のルートの変更を観察することに特に興味がApp.Router
あります。次に、そのルートに関連付けられているビューにアクセスし、ビュー<title>
のプロパティに基づいてオブザーバーからタグを更新したいと考えています。
たとえば、/about
- オブザーバーを監視するように設定するにはどうすればよいですか?
currentState
観察するプロパティまたは同等のものを見つけるのに問題があります。 - オブザーバー内で
App.AboutView
、ルートに関連付けられた にアクセスするにはどうすればよいですか?
私は使用しています1.0.0pre4
私の目標は、オブザーバーが動作する各ビューにtitle
プロパティとプロパティを設定することです。プロパティを使用してを更新し、プロパティ オブジェクトを使用して、現在のユーザーがルートにアクセスできるかどうかを確認します。authorization
currentPath
title
document.title
authorization
これと@Michael Grassottiの答えを言うと、おそらくこれらのプロパティはViewではなくControllerに属します。目標は、現在のルートのコンテキストに関連付けられているこれらのプロパティにアクセスして を変更し、(ログインしているユーザーのオブジェクト モデルを格納する) my が現在のルートにアクセスする権限を持ってdocument.title
いるかどうかを確認することです。App.CurrentUserController
User
javascript - Ember.js の新しいルーティング API
現在、アプリケーションを ember1.0.0-pre2
から に移行しています1.0.0-pre4
が、新しいルーティング API に問題があります。
私のユースケースは、ドキュメントの新しいガイドでカバーされていないようです。
アプリの残りの部分の横に常にチャット div があります。アプリケーション テンプレートは次のようになります。
古いルーター設定では、コントローラーとそれぞれのアウトレットの両方で URL をマッピングします。
このコードを新しい API に移行する方法、または Ember の設計が不適切である場合、これをコーディングした方法を変更する方法を教えてください。
私の質問を一般化できると思います。新しいルーティング API を使用して、ページのさまざまな部分を処理しながら複数のコントローラーを同じ URL にマップするにはどうすればよいでしょうか。
どうも
ember.js - emberjs #テンプレートがレンダリングされたにもかかわらず、各ヘルパーが出力を生成しない
「posts/index」テンプレートはレンダリングされていますが、テンプレート内の emberjs #each ヘルパーは出力を生成しません。これはjsfiddle です: http://jsfiddle.net/rxWzu/
私はこれを試しました:
この
ありがとう。
ember.js - EmberJS 1.0.0-pre.4 でルート遷移を検出する
ルート遷移がいつ発生するかを検出しようとしています。v1.0.0-pre.4
トランジションを処理する最新バージョンの Ember ( ) 内にこのコード スニペットを見つけました。
Ember アプリケーションを としてセットアップしましたwindow.App = Ember.Application.create()
。
を呼び出していることに気付きましたがthis.notifyPropertyChange('url');
、アプリケーションにオブザーバーをアタッチしようとしたApp.Router
かApp.Router.router
、 を実装していないためにエラーが発生しましたEmber.Observable
。
ルートごとに特別な Ember.Route を作成せずに、ルート パスがいつ変更されたかを検出するにはどうすればよいですか?
ember.js - #linkTo ヘルパーの emberjs ガイドに従うと、個々の投稿が表示されない
以下に示すようなルートを持つjsfiddleがあります。これはemberjs ガイドのものとまったく同じで、 {{post.title}}に添付された#linkTo ヘルパーをクリックすると、個々の投稿が表示されるはずですが、代わりに、コンソールに次のエラーが表示されます。
キャッチされないエラー: アサーションが失敗しました: 未定義のオブジェクトで 'id' を使用して get を呼び出すことはできません。
また、ホームページの投稿リンクをクリックすると、すべてのタイトルが表示されますが、コンソールには次のエラーも表示されます。
不明なエラー: ビューがレンダリングされた後、DOM に挿入される前に、ビューが再レンダリングされました。
emberjs ガイドと同じテンプレート
{{linkTo}} のパラメーターとして文字列リテラルのサポートを追加したこのコミット、特にそのコミットからの以下の提案を確認しました。
現在、Ember では文字列リテラルを引数として指定できます。{{#人気のある投稿へのリンク}}は、現在のコンテキストで「人気のある」プロパティを検索し、その ID を持つモデルを指す URL を生成します。{ #linkTo post "popular"}}は、文字列リテラル "popular" をモデルとして扱います。
ember.js - EmberルーターのrootURLオプション(キャッチされないエラー:URL'/ admin'に一致するルートがありません)
/admin/プレフィックスで実行される管理システムの構築を開始しようとしています。
これが私のルートファイルです
/ adminに移動すると、次のエラーが発生します。
私はemberjsから始めたばかりで、私のコードはこのシリーズに基づいています
ember.js - emberjs new-router-V3 / controllerは、ember-dataを使用してレコードを作成または編集できません
このjsfiddleには、Emblog.PostsNewRoute とEmblog.PostsEditRouteがあります。ルートには、「保存、キャンセル、破棄」のイベントが含まれています。
新しいレコードを作成すると、メモリに作成されるだけで、store.commit()が呼び出されることはなく、コンソールでは次のエラーがスローされます。
Uncaught TypeError:未定義のメソッド'commit'を呼び出すことができません
編集しようとすると、同じエラーがスローされますが、編集はメモリ内でのみ行われます。
破棄アクションも失敗します。
キャンセルを呼び出すと、次のようになります。
未定義のプロパティ'defaultTransaction'を読み取ることができません
ほとんどのコードはjsfiddleにあります。保存イベントとキャンセルイベントは、Yehudaがここで説明したパターンに従います。
ありがとう