问题标签 [revealing-module-pattern]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 揭示模块模式:对象未定义
我正在尝试在 IE8 的 js 文件中实现显示模块模式。鉴于此代码:
我的问题是,在 jQuery 文档就绪函数中, foo 始终未定义,我无法弄清楚问题所在。
ajax - 通过 Jquery Ajax 调用向 Web 服务提供参数
我正在使用显示模块模式和淘汰赛来绑定表单。当以该表单(注册)输入数据时,需要将其发布回 MVC4 Web 方法。
这是Jquery代码
控制器代码现在很简单
当我尝试捕获数据(使用简单的 console.log)并在 jslint.com 中验证它时,它是一个有效的 Json。
我尝试将数据硬编码为
数据:“{data:'{\'name\':\'niall\'}'}”,但在我的网络方法中,我仍然得到空值。
在受控的情况下将标签添加
[System.Web.Script.Services.ScriptMethod(UseHttpGet = false, ResponseFormat = System.Web.Script.Services.ResponseFormat.Json)]
到我的 Post 方法中,但仍然没有卓有成效的结果甚至尝试过 JSON.Stringify
data: JSON.stringify(data)
但我的网络方法仍然为空。
我无法弄清楚解决方案。
在此链接http://forums.asp.net/t/1555940.aspx/1中发现了类似的问题, 甚至使用 jQuery Ajax 将参数传递给 WebMethod 但对我没有帮助:(
javascript - 揭示模块模式命名约定
我想避免记住一个方法的两个名称,一个用于公共访问,一个用于私有访问。从这个意义上说,如果您对两者使用相同的名称,在哪种情况下脚本会失败?以下代码何时会失败?
我已经在这个 fiddle中尝试过,它在 FF、IE、Chrome、Safari 中都能正常工作。JSLint 对此也无话可说。
我经常看到人们命名私有方法_showMessage
或showMessageFn
. 这有充分的理由吗?
我正在寻找的答案是它要么在某些情况下失败,可能会造成混乱,要么只是 JavaScript 人发明了看起来很聪明的约定。
javascript - 从对象内调用时的 knockout.js ko.applyBindings()
我正在尝试做这样的事情:
整个视图在对象内生成,私有并通过公共方法返回,以便可以在页面上生成。我做错了什么,希望有任何指示可以帮助我解决这个问题。
javascript - 正确使用 RequireJS、Coffeescript 和 Revealing Module Pattern
我在下面定义了以下 Coffeescript 代码,它使用 RequireJS 定义了一个函数:
它产生以下内容:
我想我遇到的问题是由 Coffeescript 代码生成的自执行函数。这会导致我可能无法跟踪的问题吗?或者这是正确的。
谢谢你。
javascript - 使用 RequireJS 在 JavaScript 中实现 AMD
我对 RequireJS 完全陌生,所以我仍在努力寻找解决方法。我有一个运行良好的项目,然后我决定使用 RequireJS,所以我把它搞砸了 :)
顺便说一句,我有几个关于 RequireJS 以及它如何计算一切的问题。我在脚本文件夹中有文件层次结构:
我的_Layout.cshtml
文件中有以下行:
这是我的 bootstrap.js 文件:
然后我使用该define
函数实现了我的模块。一个例子是 pubsub 模块:
我基本上对我的所有 javascript 文件都做了同样的事情。请注意,包含 pubsub 模块的实际文件jquery.pubsub.js
位于/Scripts/utils
文件夹内。其他模块也是如此。
更新:
好的,我现在更新了我的引导文件,因为我想我了解什么是 shim 以及为什么我应该使用它。但它仍然对我不起作用,尽管我还宣布了所有我认为会导致我无法正确使用它们的路径。问题是它甚至没有进入require
引导文件中的回调,所以我想我在配置或定义模块的方式上仍然存在问题?
javascript - 揭示模块模式在 Knockout 中设置模型的新实例
我有 MVVM 和类似的模型;
我对他们有意见。如您所见,当触发 LoadData(在 PriceListViewModel 中)时,Grid1 与 Grid2 具有相同的值。是什么问题,我该如何解决?
javascript - 保护对象文字并防止它们被覆盖的好习惯
我一直在对对象文字等进行一些研究。我正在创建一个具有来自我的玩家的各种属性的游戏。这些属性存储在多个组中,例如他的船和所有属性,他的武器和所有属性等。因此,我一直将这些属性存储到对象文字中。
我不希望我的对象值被覆盖。我在这里遇到了一篇文章http://www.gabordemooij.com/jsoop.html,并且很好奇这样的事情是否会是一个健康的开始,以防止对象值被轻易覆盖......
javascript - 如何在“返回 this”的显示模块模式中处理本地函数
我喜欢揭示模块模式。我将有私人功能,我想公开并返回它们。但是我的显示模块模式中可能还有一些本地函数“返回这个”......
如果我明确返回某些东西,可以“返回这个”吗?(在使用显示模块模式的上下文中)。如果没有,我如何转换我的本地函数 oplayer.damage 以在适当的上下文中使用?感谢您的任何建议!我只是想围绕整个“归还这个”概念来思考。
javascript - 是否可以将显示模块模式实例传递给回调函数?
我有一些使用显示模块模式的 javascript,如下所示。它接受一个稍后调用的回调函数。我希望该回调函数能够调用类中定义的函数,但它不起作用。
我可以将这个示例重新设计为 Revealing Prototype Pattern 并且它可以按预期工作,所以我的问题是我可以使用 RMP 来实现这个工作,还是只是这个模式的一个限制?
谢谢,罗杰