Questions tagged «javascript»

有关在ECMAScript(JavaScript / JS)及其各种方言/实现(不包括ActionScript)中进行编程的问题。此标记很少单独使用,但最常与标记[node.js],[jquery],[json]和[html]关联。

4
类上的JavaScript click事件监听器
我目前正在尝试编写一些JavaScript,以获取已单击的类的属性。我知道要以正确的方式执行此操作,应该使用事件侦听器。我的代码如下: var classname = document.getElementsByClassName("classname"); var myFunction = function() { var attribute = this.getAttribute("data-myattribute"); alert(attribute); }; classname.addEventListener('click', myFunction(), false); 我希望每次单击其中一个类来告诉我该属性时,都会得到一个警告框,但是不幸的是,这不起作用。有人可以帮忙吗? (注 - 我可以很容易地做到这一点jQuery,但我不喜欢使用它)


6
Redux-多家商店,为什么不呢?
注意:我已经阅读了Redux(Baobab,也是如此)的文档,并且做了很多Google搜索和测试工作。 为什么强烈建议Redux应用程序只有一个商店? 我了解单商店设置与多商店设置的优缺点(关于此主题,有很多关于SO的问答)。 IMO,这个架构决定是基于应用程序开发人员的项目需求。那么,为什么如此强烈地建议Redux使用,几乎达到强制性的程度(尽管没有什么阻止我们开设多个商店)? 编辑:转换为单店后的反馈 在与redux一起工作了几个月后,许多人认为它是复杂的SPA,我可以说单一的商店结构让我感到很高兴。 以下几点可能会帮助其他人理解为什么在许多很多用例中,单商店还是多商店是一个有争议的问题: 可靠:我们使用选择器来挖掘应用程序状态并获取与上下文相关的信息。我们知道所有需要的数据都在一个存储中。它避免了所有关于国家问题可能在哪里的质疑。 速度很快:我们的商店目前有将近100个减速器,如果没有更多的话。即使达到这个数量,也只有极少数的减速器在任何给定的调度上处理数据,其他的只是还原以前的状态。关于大型/复杂存储(reducers的nbr)缓慢的说法几乎没有意义。至少我们还没有看到任何性能问题。 调试友好:虽然这是整体上使用redux的最有说服力的参数,但对于单商店还是多商店也是如此。在构建应用程序时,您一定会在过程中出现状态错误(程序员错误),这很正常。PITA是那些错误需要数小时才能调试的时候。多亏了单一存储(和redux-logger),我们从未在任何给定的状态问题上花费超过几分钟的时间。 一些指针 建立您的redux商店的真正挑战是决定如何构建它。首先,因为改变结构只是一个主要的痛苦。其次,因为它在很大程度上决定了您的使用方式,并为任何过程查询应用数据。关于如何构建商店有很多建议。在我们的案例中,我们发现以下是理想的: { apis: { // data from various services api1: {}, api2: {}, ... }, components: {} // UI state data for each widget, component, you name it session: {} // session-specific information } 希望此反馈对其他人有帮助。 编辑2-有用的商店工具 对于那些一直想知道如何“轻松”管理一家商店的人来说,这可能会很快变得复杂。有一些工具可以帮助隔离商店的结构依赖性/逻辑。 有Normalizr可以根据架构对数据进行标准化。然后,它提供了一个界面来处理您的数据,并通过来获取数据的其他部分id,就像一个Dictionary。 当时我还不了解Normalizr,所以我沿相同的思路建立了一些东西。Relational-json采用一个模式,并返回一个基于Table的接口(有点像一个数据库)。Relational-json的优点是您的数据结构可以动态引用数据的其他部分(本质上,您可以像正常的JS对象一样在任何方向上遍历数据)。它不如Normalizr成熟,但是我已经在生产中成功使用了几个月。
220 javascript  redux 


15
如何检查FormData?
我已经尝试过 console.log并使用遍历它for in。 这里是FormData上的MDN参考。 两种尝试都在摆弄。 var fd = new FormData(), key; // poulate with dummy data fd.append("key1", "alskdjflasj"); fd.append("key2", "alskdjflasj"); // does not do anything useful console.log(fd); // does not do anything useful for(key in fd) { console.log(key); } 如何检查表单数据以查看设置了哪些键。


9
QuotaExceededError:Dom异常22:试图向存储中添加超出配额的内容
在iPhone和iOS 7上使用LocalStorage会引发此错误。我一直在寻找一种解决方案,但是考虑到我什至没有私下浏览,所以没有任何关系。 我不明白为什么默认情况下在iOS 7中会禁用localStorage,但似乎是这样吗?我也在其他网站上进行了测试,但是没有运气。我什至尝试使用以下网站对其进行测试:http : //arty.name/localstorage.html,但出于某种奇怪的原因,它似乎根本没有保存任何东西。 有没有人遇到过同样的问题,只有他们靠运气解决了吗?我应该切换存储方式吗? 我尝试通过仅存储几行信息来对它进行硬调试,但无济于事。我使用标准localStorage.setItem()功能保存。

10
JSON和对象文字表示法有什么区别?
有人可以告诉我使用对象文字表示法定义的JavaScript对象与JSON对象之间的主要区别是什么吗? 根据一本JavaScript书,它说这是使用Object Notation定义的对象: var anObject = { property1 : true, showMessage : function (msg) { alert(msg) } }; 为什么在这种情况下不是JSON对象?只是因为它不是通过使用引号定义的?

11
如何绑定到jQuery中textarea的change事件?
我想捕获是否发生任何更改 <textarea>。就像键入任何字符(删除,退格键)或鼠标单击并粘贴或剪切一样。是否有可以触发所有这些事件的jQuery事件? 我尝试了更改事件,但仅在从组件中跳出后才触发回调。 使用:如果一个<textarea>包含任何文本,我想启用一个按钮。

13
Django模板变量和Javascript
当我使用Django模板渲染器渲染页面时,可以传入包含各种值的字典变量,以使用来在页面中对其进行操作{{ myVar }}。 有没有办法在Javascript中访问相同的变量(也许使用DOM,我不知道Django如何使变量可访问)?我希望能够基于传入的变量中包含的值使用AJAX查找来查找详细信息。

12
如何修复WebStorm警告“需要”的“未解决的函数或方法”警告(Firefox附加SDK)
我正在将WebStorm 7用于Firefox附加SDK开发。 WebStorm显示警告:的“未解决的函数或方法” require()。 我想摆脱警告。 var pageMod = require("sdk/page-mod"); 注意:我已经配置了JavaScript库(请参阅/ lib / sdk全局变量)。 环境: WebStorm 7.0.2 Windows 7 64位 Firefox附加SDK 1.15beta1

7
了解React-Redux和mapStateToProps()
我正在尝试了解react-redux的connect方法及其作为参数的功能。特别是mapStateToProps()。 以我的理解,其返回值mapStateToProps将是一个从状态派生的对象(因为它存在于商店中),其键将作为道具传递给目标组件(应用了connect的组件)。 这意味着目标组件所消耗的状态与存储在商店中的状态可能具有截然不同的结构。 问:可以吗? 问:这是预期的吗? 问:这是反模式吗?

6
父ng-repeat对子ng-repeat的访问索引
我想使用父列表(foos)的索引作为子列表(foos.bars)中函数调用的参数。 我发现了有人建议使用$ parent。$ index的帖子,但$index不是的属性$parent。 如何访问父级的索引ng-repeat? <div ng-repeat="f in foos"> <div> <div ng-repeat="b in foos.bars"> <a ng-click="addSomething($parent.$index)">Add Something</a> </div> </div> </div>

10
AngularJS-当使用ng模型时,输入文本框中的Value属性会被忽略吗?
如果我将简单的输入文本框值设置为类似于下面的“ bob”,则使用AngularJS。如果ng-model添加了属性,则该值不显示。 <input type="text" id="rootFolder" ng-model="rootFolders" disabled="disabled" value="Bob" size="40"/> 任何人都知道可以通过简单的方法将此输入默认设置为某值并保持ng-model?我尝试将a ng-bind与默认值一起使用,但这似乎也不起作用。

3
为什么JavaScript需要以“;”开头?
我最近注意到,Web上的许多JavaScript文件都是在;注释部分之后立即开始的。 例如,此jQuery插件的代码开头为: /** * jQuery.ScrollTo * Copyright (c) 2007-2008 Ariel Flesler - aflesler(at)gmail(dot)com | http://flesler.blogspot.com * Dual licensed under MIT and GPL. * Date: 9/11/2008 .... skipping several lines for brevity... * * @desc Scroll on both axes, to different values * @example $('div').scrollTo( { top: 300, left:'+=200' }, { …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.