今天我是一個 rails 的使用者,請教 google 大神到底要怎麼在 javascript 存取 cookie,goo 了很久,一堆人都說阿就 $.cookie('name')
,看起來是 jQuery 的東西,我也在 rails 中裝了 jQuery 但就是顯示 $.cookie is not a function
。
後來才發現,幹原來是要另外裝 jquery-cookie 才能用。然後這個 project 還搬家變成 js-cookie 了,看名字應該是擺脫 jQuery 的束縛了。
如果是 rails 的話直接用 gem 裝 jquery-cookie-rails 或 js_cookie_rails 就可以了。用後者的話基本上就是在 Gemfile
加上
gem 'js_cookie_rails'
然後 bundle install
再去 app/assets/javascripts/application.js
裡面加上
//= require js.cookie
就可以開始用他的指令去存取 cookie 了,下面簡單的介紹基本的,要注意的是生命期限預設單位是天。
// 設定 cookie
Cookies.set('name', 'value');
// 設定 cookie 生命期限 7 天
Cookies.set('name', 'value', { expires: 7 });
// 設定 cookie 生命期限 30 秒
var date = new Date();
date.setTime( date.getTime() + ( 30 * 1000 ));
$.cookie( "hoge", "30 seconds", { expires: date });
// 取得 cookie,若無此 cookie 會回傳 null
Cookies.get('name');
// 刪除 cookie
Cookies.remove('name');
Reference
jquery.cookie.jsの使い方とCOOKIEの寿命(保存期間)を秒・分・時間で指定する方法
Written with StackEdit.
沒有留言:
張貼留言