[解決済み] UI-routerを使って、オブジェクトをステートに渡すには?
2022-09-07 15:44:19
質問
ui-routerを使って、ある状態に遷移し、任意のオブジェクトを渡すことができるようにしたいのですが。
通常
$stateParams
が使われていますが、この値はURLに挿入されると思うので、ユーザーがこのデータをブックマークできないようにしたいのです。
このようなことをしたいのですが。
$state.transitionTo('newState', {myObj: {foo: 'bar'}});
function myCtrl($stateParams) {
console.log($stateParams.myObj); // -> {foo: 'bar'}
};
URLに値をエンコードせずに行う方法はないでしょうか?
どのように解決するのですか?
バージョン0.2.13では、$state.goにオブジェクトを渡すことができるはずです。
$state.go('myState', {myParam: {some: 'thing'}})
$stateProvider.state('myState', {
url: '/myState/{myParam:json}',
params: {myParam: null}, ...
を作成し、コントローラでそのパラメータにアクセスします。
$stateParams.myParam //should be {some: 'thing'}
myParamはURLに表示されなくなります。
ソースはこちら。
christopherthielen さんのコメントを見る https://github.com/angular-ui/ui-router/issues/983 をご覧ください。
<ブロッククオートchristopherthielen: はい、これは現在 0.2.13 で動作しているはずです。
.state('foo', { url: '/foo/:param1?param2', params: { param3: null } // nullはデフォルト値 });
$state.go('foo', { param1: 'bar', param2: 'baz', param3: { id: 35, name: 'what' }. });
foo' の $stateParams は、現在 { param1: 'bar', param2: 'baz', param3: { id: 35, name: 'what' } となります。}
url は /foo/bar?param2=baz です。
関連
-
[解決済み】ある要素を別の要素に移動させるには?
-
[解決済み] JavaScriptのオブジェクトが空であることをテストするにはどうすればよいですか?
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] JavaScriptのオブジェクトをループスルーまたは列挙するにはどうすればよいですか?
-
[解決済み] Node.jsのプログラムにコマンドライン引数を渡すにはどうしたらいいですか?
-
[解決済み] Javascriptで文字列の最後の文字を切り取るにはどうしたらいいですか?
-
[解決済み] JavaScriptのオブジェクトを表示するにはどうすればよいですか?
-
[解決済み] JSON文字列を安全にオブジェクトに変換する
-
[解決済み] javascript の関数から `undefined` と `null` のどちらを返すのが良いのでしょうか?
-
[解決済み] JavaScriptのtoString()関数をオーバーライドして、デバッグ用に意味のある出力を提供することは可能でしょうか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] JavaScript で範囲を作成する - 奇妙な構文
-
[解決済み] reactのrender関数でdynamic hrefを作成するには?
-
[解決済み] 文字列がhtmlであるかどうかをチェックする
-
[解決済み] Javascript / jQueryでAndroid端末を検出する。
-
[解決済み] react-routerのハッシュフラグメントからクエリパラメータを取得する
-
[解決済み] イテレータでmap()を使用する
-
[解決済み] JSHintの'+'前の改行不良の説明
-
[解決済み] JavaScriptの文字列プリミティブとStringオブジェクトの違いは何ですか?
-
[解決済み] 変異を伴わないオブジェクトからの値の削除
-
[解決済み] JavaScriptデータフォーマット/プリティプリンタ