javascript - 前端 关于localStorage
高洛峰
高洛峰 2017-04-11 11:10:38
[JavaScript讨论组]
function localStorageServcie () {
  'ngInject';

  let ctrl = this;

  /**
   * 获取 localStorage
   * @param key
   * @returns
   */
  ctrl.get = (key) => {
    return localStorage.hasOwnProperty(key) ? localStorage.getItem(key) : null;
  };

  /**
   * 写入 localStorage
   * @param key
   * @param value
   */
  ctrl.set = (key, value) => {
    localStorage.setItem(key, value);
  };

  /**
   * 删除对应条目
   * @param key
   */
  ctrl.delete = (key) => {
    delete localStorage[key];
  };

  /**
   * 设置监听;注意,此处只能对一个元素设置监听;
   * @param key - 写入的键名
   * @param elem - jquery element
   */
  ctrl.setWatch = (key, elem) => {
    console.log('');// 占个位子做测试
    $(window).bind('unload', () => {
      ctrl.set(key, elem.val());
      $(window).unbind();
    });
  };
}

export default angular
  .module('localStorage', [])
  .service('localStorage', localStorageServcie)
  .name;

遇到一个奇怪的问题,本地调试下ok,能够正常存入localStorage
传到了服务器之后,如果将 ctrl.setWatch 中第一行的 console.log('');删掉,就无法存入localStorage,留着就能存,不造是为什么呢,求解答!

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(1)
黄舟

$(window).on('beforeunload') 事件试试

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号