草庐IT

localstorage-pattern

全部标签

javascript - react .js : Syncing entire state to localStorage

我想将应用程序的状态存储在localStorage中。是否存在状态更改时触发的回调或事件?我会用它来调用localStorage.state=JSON.stringify(this.state)。可能,使用0.5秒节流。TodoMVCReactexamples使用localStorage作为存储。但是,它定义了事件处理程序中的保存和删除,例如keydown和click。就我而言,这样做会产生大量样板文件。 最佳答案 在componentDidUpdate中您可以序列化状态的生命周期方法:componentDidUpdate:func

javascript - 将对象添加到 localStorage 中的数组

好的,我已经尝试按照此处的示例进行操作,我知道可能有几种不同的方法可以将对象添加到本地存储中的数组而不是覆盖它,但我至少找不到其中一种。获得了将对象存储在数组中的代码,但它正在覆盖自身。谁能告诉我我错过了什么?(恐怕我可能会错过很多)。functionaddEntry(){varentryTitle=document.getElementById("entryTitle").value;varentryText=document.getElementById("entryText").value;varentry={"title":entryTitle,"text":entryText

javascript - _以 "revealing module pattern"样式编写的 JSDoc'ing Javascript 文件的最佳实践?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我的大多数Javascript函数都相对简单,并且需要它们的副作用:我使用jQuery来操作DOM或进行Ajax调用。我更喜欢以“揭示模块模式”的风格编写我的函数。我justdiscoveredJSDoc-注释Javascript文件有一个好处:在annotations的帮助下,Eclipse的JS开发工具可以解析我的JS文件和filltheEclipseOutlineView(否则将为空

javascript - 在 Protractor 测试中设置来自 localStorage 的项目

describe('Thefeature',function(){beforeEach(function(){browser.executeScript('localStorage.setItem("key","value");');});it('shoulddothis',function(){});});但是当使用chromedriver2.10和chrome37对selenium运行测试时我得到这个错误Executing:[executescript:window.localStorage.setItem("key","value");,[]])15:31:29.747WARN-

javascript - localStorage.setItem 在刷新时不持久

我正在尝试使用HTML5本地存储做一个super简单的setItem和getItem。它似乎只是行不通。这有效:$(document).ready(function(){localStorage.setItem('keyA','valueA');vartestA=localStorage.getItem('keyA');alert(testA);});它输出一个警告框,上面写着“valueA”。但是,当我注释掉第2行(设置项目值)并刷新页面时,它只是警告“null”。为什么值不持久化?就好像它实际上根本没有被存储。浏览器是Firefox6,没问题。这可能与在jquerydocument

javascript - 从 LocalStorage 中检索所有数据(不知道键名)

我正在寻找一种从localStorage中获取所有信息的方法。我遇到的问题是我不知道数据是什么,因为它是用户生成的。所以这里发生了什么,用户输入了一些文本,它使用javascript根据他们在输入表单上勾选的复选框来操作它。这些框用于符号,例如,如果它们勾选@的框,则文本+@At(符号然后是单词)将被放置在本地存储中,另一半作为bool值(在本例中为1或0)表示是否被检查。确切的对应该是这样的:someString..@At|1someString..#Hash|0等等还应该注意的是,这是为了在Chrome扩展中使用,所以在其他浏览器中的兼容性对我来说不是必需的(尽管它对其他阅读本文的

javascript - Angular 模块 : event bus or mediator pattern/service 中的全局通信

到目前为止,我已经看到了很多问题的解决方案。当然,最简单的方法是在$rootScope中$emit事件作为事件总线,例如(https://github.com/btilford/anti-patterns/blob/master/angular/Angular.md)angular.module('myModule').directive('directiveA',function($rootScope){return{link:function($scope,$element){$element.on('click',function(event){$rootScope.$emit(

Javascript localStorage 和域

因为iPad/iPhone不支持来自第三方网站的cookie,我想将值存储在localStorage中。domainA上的示例可能是:domainB上的这个脚本可以访问window.localStorage并且效果很好。但是,这些值存储在domainA中,因为那是文档的位置。如果我将我的脚本放在源位于domainB的iframe中,那么它可以工作,但我试图避免框架。所以我的问题是:有没有办法在远程域的localStorage中获取/设置值,以便我稍后访问domainB时它们会在那里? 最佳答案 如果没有您的iframe解决方法,这是

自动格式化 Pattern 的 JavaScript RegExp

我在stackflow社区看到很多格式化电话或数字(逗号和小数)的函数,比如这个问题here和别的。这是我想要的:第1步:为这样的模式维护库:varlibrary={fullDate:{pattern:/^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$/,error:"InvalidDateformat.UseYYYY-MM-DDformat."},fullDateTime:{pattern:/^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}[0-9]{1,2}:[0-9]{1,2}$/,error:"InvalidDateTimeformat.UseYY

javascript - LocalStorage 在 chrome 的不同选项卡中返回 null

这是我的问题:我在新选项卡中更新了popup.js中的localStorage。我在background.js中访问相同的localStorage(相同的key)。现在,除了chrome://extensions选项卡(当我加载扩展程序时)之外,每个选项卡都返回null。我认为localStorage在所有选项卡中都是持久的。代码:弹出.js:$(document).ready(function(){alert(localStorage.getItem('filters'));varoldFilters=localStorage.getItem('filters');//Allthef