AnglarJSでの操作Cookies
1608 ワード
もしあなたのアプリケーションが十分に大きく、十分に複雑であれば、すぐにこのような状況に遭遇します.クライアントに状態情報を格納する必要があります.これらの状態情報はセッションをまたぐものです.document.co okieインタフェースを使って直接に純テキストクッキーを操作したことを覚えているかもしれません.
幸いなことに、このような方式はもう二度と帰って来ません.すべての現代のブラウザでHTML 5 APIがほとんど使えます.さらに、AnglarJSはあなたのために、CookieとCookie Store APIを提供して、cookieを操作します.これらの2つのサービスは、HTML 5 cookie(http://www.w3schools.com/html/html5_webstorge.asp)とよく連携して動作することができます.HTML 5 APIが使用できると発見されたら、それらは使用されます.HTML 5 APIが使えないと発見された場合、元のdocument.co okiesオブジェクトが使用されます.2つの方法では、同じインターフェースで呼び出すことができる.
まず$cookiesサービスを見に来ました.cookiesはシンプルなオブジェクトで、いくつかのキーと値を持っています.このオブジェクトにキーと値を追加するとクッキーに情報を追加するのに相当します.削除キーと値は対応するクッキーから削除操作に相当します.
しかし、ほとんどの場合、私たちは直接に$cookiesレベルで動作したくないです.それは文字列を直接操作することを意味します.そして、自分で解析する必要があります.データをオブジェクトに解析したり、データに解析したりする必要があります.これらのシーンについては、cookie Storeを使用して、cookiesを書き込み、削除するプログラムを提供します.では、$cookieStoreを使う場合、Search Controllerを一つ覚えてもらいたいなら、前の5つの検索結果はどうすればいいですか?
次世代WebアプリケーションをAnglarJSで開発
幸いなことに、このような方式はもう二度と帰って来ません.すべての現代のブラウザでHTML 5 APIがほとんど使えます.さらに、AnglarJSはあなたのために、CookieとCookie Store APIを提供して、cookieを操作します.これらの2つのサービスは、HTML 5 cookie(http://www.w3schools.com/html/html5_webstorge.asp)とよく連携して動作することができます.HTML 5 APIが使用できると発見されたら、それらは使用されます.HTML 5 APIが使えないと発見された場合、元のdocument.co okiesオブジェクトが使用されます.2つの方法では、同じインターフェースで呼び出すことができる.
まず$cookiesサービスを見に来ました.cookiesはシンプルなオブジェクトで、いくつかのキーと値を持っています.このオブジェクトにキーと値を追加するとクッキーに情報を追加するのに相当します.削除キーと値は対応するクッキーから削除操作に相当します.
しかし、ほとんどの場合、私たちは直接に$cookiesレベルで動作したくないです.それは文字列を直接操作することを意味します.そして、自分で解析する必要があります.データをオブジェクトに解析したり、データに解析したりする必要があります.これらのシーンについては、cookie Storeを使用して、cookiesを書き込み、削除するプログラムを提供します.では、$cookieStoreを使う場合、Search Controllerを一つ覚えてもらいたいなら、前の5つの検索結果はどうすればいいですか?
function SearchController($scope, $cookieStore) {
$scope.search = function(text) {
//
...
// , ,
var pastSearches = $cookieStore.get('myapp.past.searches') || [];
if(pastSearches.length > 5) {
pastSearches = pastSearches.splice(0);
}
pastSearches.push(text);
$cookieStore.push('myapp.past.searches', pastSearches);
};
}
次世代WebアプリケーションをAnglarJSで開発