草庐IT

你应该

全部标签

javascript - 我的 Javascript 应该去哪里查看组件?

我正在习惯viewcomponents在MVC6中,我问了一个similarquestion几年前关于偏颇的看法。如果我构建一个View组件封装一个需要自己的Javascript的常见用例,我应该把那个Javascript放在哪里?我知道它是dangerousatbest在部分View中使用Javascript,但将它包含在View组件中会简单得多,而不是包含在包含View或必须由包含View引用的单独文件中。例如,假设我有一个包含两个下拉菜单的View组件。第一个下拉列表中的选择决定了第二个下拉列表中显示的项目。当然,这在Javascript中很容易处理,但我应该把它放在哪里呢?

javascript - 我应该如何清理 KnockoutJS ViewModels?

我有一个单页应用程序,用户可以在其中翻阅项目列表。反过来,每个项目都有一个项目列表。可观察数组使用通过AJAX请求从服务器检索到的新项目进行更新。这一切都很好。不幸的是,几页之后,执行的操作数量(以及FireFox和IE8等浏览器中使用的内存量)不断增加。我已经追踪到我的可观察数组中的元素没有被正确清理并且实际上仍在内存中,即使我已经用新数据替换了我的可观察数组中的项目。我创建了一个smallexample复制了我看到的问题:HTML:MOREJavaScript/KnockoutJSView模型:varsubItemIndex=0;$("#clear").on("click",fun

javascript - 什么时候应该使用脚本加载器?

例如lab.js,yepnope.js,require.js我不太清楚在什么情况下使用脚本加载器是有利的。我知道当你有重要的浏览器,或功能目标js时,它会很好。但是,在UI响应性和页面加载时间方面,发出额外请求与仅将脚本串联在一起存在性能折衷。然后还有优化缓存的问题。我觉得我会得到很多“这取决于”的答案。 最佳答案 这是对脚本加载器的一个很好的反馈How,When,AndWhyScriptLoadersAreAppropriate 关于javascript-什么时候应该使用脚本加载器?,

javascript - 我应该如何在 AngularJS 中制作可配置模块

我一直在修补AngularJS,我已经建立了一小部分指令和服务,我想将它们打包到一个JS文件中,以便我可以在任何地方使用它们。我有一些特定于网站的设置,我的模块需要这些设置来进行API调用和诸如此类的事情。我只是想知道制作可配置模块的Angular方式是什么。显然我不想为每个网站修改我的可重用JS文件,因为那样会破坏拥有它的目的。鉴于每个网站的值都将保持不变,将它们作为参数传递给每个函数调用似乎很麻烦,我宁愿尽可能远离全局变量。我搜索了很多问题来寻找我想要的答案,到目前为止我发现的最接近的模式是让我的可重用模块依赖于一个名为“settings”之类的未包含的模块,然后定义它页面JS文件

javascript - 我应该使用哪个 JavaScript 库进行客户端断字?

我想通过JavaScript在我网站上的一些大文本上实现客户端断字。(我知道CSS3断字,并且会在可用时使用它,但它通常不可用。)我一直在使用Hyphenator.js,它运行良好,但非常大(我的优化编译版本仅使用英语就达到106KB)并且非常慢。它又大又慢,我正在考虑完全放弃断字。无论如何,这只是一种奢侈。但最近我遇到了一个似乎是替代方案的东西:Hypher.令我困惑的是Hypher如何让我如此变小并做同样的事情。我想知道是否有人可以解释这一点。Hypher是否同样有效?有什么理由改用Hyphenator.js吗?Hypher的自述文件有指向Hyphenator.js的链接atthe

javascript - 遍历数组时应该使用 for-of 还是 forEach?

这个问题在这里已经有了答案:WhyshouldforEachbepreferredoverregulariterators?(6个答案)Loops-forEach,for,for....of,for...in(2个答案)LoopoveranarrayinJavaScript(40个答案)关闭4年前。此外,这是风格问题还是功能问题?这是偏好问题还是更好?我正在尝试理解for-of的目的。通常我用,letiterable=[10,20,30];iterable.forEach((val)=>{console.log(val);})但我看到这个新语法可用。letiterable=[10,20

javascript - 什么时候应该在 JavaScript 中使用 MVC 框架?

我知道这个主题可能会变得主观,因此它与我正在处理的特定Web应用程序无关。对于JavaScript,我没有使用过像Backbone.js这样的MVC库但我看到了分离逻辑和View的优势。另一方面,可能不值得花时间学习框架并调整应用程序以使用它。此外,我猜想,在JavaScript中处理所有View会使SEO变得更加困难。那么,鉴于Web应用程序的概念,我应该如何决定使用Backbone.js或类似框架是否有意义?决定取决于什么?欢迎任何使问题更客观的帮助。 最佳答案 有许多客户端javascriptMVC(或MV*)框架。大多数人似

javascript - 我什么时候应该使用 KnockoutJS 组件和模板?

因此,我试图用KnockoutJS3.2弄脏我的手。我已阅读文档,并且已在当前项目中成功实现了组件。我不使用AMD,所以我只是使用脚本元素来保存View。我的问题是:如果我不使用异步加载功能,使用组件而不是模板有什么真正的实际区别吗? 最佳答案 它们并不完全不同。组件由模板(html)和数据/逻辑(View模型,即JavaScript)组成。当你有一个模块化View时,你想附加一个View模型,你可以使用组件。这是更多讨论组件的链接:http://www.knockmeout.net/2014/06/knockout-3-2-pre

javascript - 什么时候应该使用 .innerHTML 以及什么时候在 JavaScript 中使用 document.write

是否有一般规则,何时应使用document.write更改网站内容,何时应使用.innerHTML?到目前为止,我的规则是:1)添加新内容时使用document.write2)更改现有内容时使用.innerHTML但我很困惑,因为有人告诉我,一方面.innerHTML是一个奇怪的Microsoft标准,但另一方面我读到了document.write在XHTML中是不允许的。我应该使用哪些结构来使用JavaScript操作我的源代码? 最佳答案 innerHTML可用于通过字符串修改来更改DOM的内容。因此,如果您想在所选元素的末尾添

javascript - 我应该总是给我的函数一个返回值吗?

我编写JavaScript代码并尝试使用它的函数式语言特性。在其他函数式语言中(甚至在Ruby中),如果我没有显式设置函数的返回值,它将返回最后计算的表达式的值。JavaScript不遵循这种模式。(准确地说,JavaScript也始终返回一个值。如果未设置任何值,则为undefined。)我的问题如下:我有一个不需要(也不需要)返回值的函数。在函数式编程上下文中使用没有显式返回值的函数是否有意义?或者如果我发现自己在这种情况下是否在某处失败了?例如,我有以下功能。它会定期检查位置哈希是否已更改,如果已更改,则调用给定的函数。LIB_hashManager=function(f,con