草庐IT

javascript - 如何重用 JSON 对象

场景:MVC网页获取包含大量数据的JSON对象。单击按钮(有很多按钮)后,我想重用这个JSON对象并选择所需的JSON属性(不向服务器发出请求)。它不是HTML5所以不能使用浏览器本地存储。目前,我将JSON对象存储在GLOBAL变量上并重新使用它。是否有任何优雅的选项可用于在客户端存储和重用返回的JSON对象? 最佳答案 只是缓存数据。无需将JSON存储在全局变量中,我相信您会在MVC应用程序中找到一个地方来限定局部变量的范围。您将通过回调为数据实现一个getter函数。使用缓存,它看起来像这样:vargetData=(funct

javascript - 如何在 Jade 中创建可重用的标记

我想要完成的事情。我想做的事情实际上非常简单,Jade模板引擎应该能够帮我解决很多问题,但我遇到了一些障碍。我正在构建一个使用大量半透明元素的网站,例如这个jsFiddle中的元素:http://jsfiddle.net/Chevex/UfKnM/为了使容器背景为半透明但保持文本不透明,这涉及3个元素:position:relative的容器DIVposition:absolute的子DIV,背景颜色,高度/宽度设置为100%,其不透明度设置为所需级别。没有特殊定位的内容的另一个子DIV。它非常简单,我在CodeTunnel.com上相当有效地使用它.我想如何简化它。我正在用node.

javascript - 使用无状态功能组件与调用方法有什么区别?

我试图了解无状态组件以及这些示例之间的区别:classApp{render(){return({this.renderAFunction('hello')});}renderAFunction(text){return({text});}}还有这个:classApp{render(){return();}}constRenderAFunction=({text})=>({text});或者是否有任何区别? 最佳答案 在功能上,绝对没有区别。两者最终都呈现一个段落元素,但还有其他方面需要考虑。在检查这两种方法时,(在我看来)需要说明三

javascript - 创建一个可重用的函数来打开和发送 Ajax

我注意到在我的程序中,每当我想声明一个对象时,例如列表、保存、添加、删除,我每次都会在每个函数中编写以下内容。ajax.open("Get","./route/action",true);ajax.send();我想做这样的事情。//this.ajax.get('./route/action').update('ajax-content');./route/action//thisispathtomyActionclass-usingservlet每次我必须打开一个连接时,给我的Action类的路径是一个servlet然后发送。每次我想加载列表、删除或更新时,我都会这样做。我怎样才能写

javascript - 分发具有依赖项的可重用 JavaScript 模块的最佳方式是什么?

JavaScript模块的格式化方式有很多种:AMD、CommonJS、UMD、ES6、全局脚本。我见过一些项目以他们想要的任何方式构建他们的源代码,并运行一个构建过程来生成一个包含上述所有格式代码的dist目录。这样做的好处是代码的用户可以选择最适合其环境的格式。只要模块不依赖于其他模块,此方法就可以正常工作。在模块必须导入其他模块的情况下,隐含的复杂性。例如RequireJS使用如下所示的配置文件:requirejs.config({paths:{'jquery':'js/lib/jquery','ember':'js/lib/ember','handlebars':'js/lib

javascript - 在大型 Web 应用程序中处理 JavaScript(可重用性、捆绑、单元测试...)

也许有人可以建议我可以使用什么工具、方法和引用来实现大型Web应用程序在JavaScript方面的以下目标:可重用性、捆绑、单元测试、许多开发人员等等。例如,我检查了browserify工具,但实际上没有文档,没有书什么的。 最佳答案 静态代码分析:JSLint,GoogleClosureToolsJavaScriptcodecheckingbeyondJSLint单元测试:JSUnitJavaScriptunittesttoolsforTDD捆绑并放在一起基于Java的构建-Wro4j-处理许多基于Web的常见工具,例如JsHin

javascript - 不寻常的 d3 放大可重用类 - this 和 bind

一段时间以来,我一直在为这个问题绞尽脑汁......我在js中有一个常用的构造函数/原型(prototype)对象(如类),它包含我所有的d3图表逻辑:figureGen=function(html_element){this.svg=d3.select(html_element).append('svg').style('width','100%').style('height','100%').append('g').attr("class","sadrzalac").attr("transform","translate("+0+","+0+")");this.element=e

javascript - 在需要时生成 WebWorker 还是重用同一个?

我正在创建一个WebGL游戏,它需要WebWorker进行一些网格处理,以防止主线程出现延迟。我的问题-是在需要时生成/创建新的WebWorker并在工作完成后终止它们,还是创建一个在内部对网格处理进行排队的永久WebWorker更好?生成(和销毁)新的WebWorker是否会产生大量开销?在需要时创建它们的主要优点是一次运行多个,没有等待完成的处理积压,这意味着更快的网格生成。非常感谢任何建议,以便我可以优化我的代码以获得最佳性能。谢谢! 最佳答案 这不是一个真正的WebGL问题,它只是一个一般的WebWorker问题。尽管这取决

javascript - 如何从不可变树中获取更改的树,最大限度地重用节点

我有一个像这样的树结构数据:[{id:54,name:123,children:[{id:54,name:123,children:[{id:154,name:1234,children[]...}]}]},{...}]我使用的是Angular2。据我所知,每当输入发生变化并且您的变化检测策略是onPush时,变化检测就会启动。.为了优化树结构更新(例如,在嵌套级别切换节点或更改此类节点的任何属性),我使用了Immutable.Immutable如何帮助我优化更新?我读到Immutable会在数据发生变化时重用旧数据的引用来构造新对象。如何有效地使用不可变数据结构来更新嵌套级别的节点?

javascript - 具有动态图像源的可重用 Gatsby-Image 组件

我正在考虑在我的下一个项目中使用Gatsby-Image,并且已经尝试了一些。我让它在我的测试项目上工作,但后来我想出了一个用例,我想像使用常规一样使用Gatsby的标签。标签。如何使Gatsby组件可重用?importReactfrom"react"import{StaticQuery,graphql}from"gatsby"importImgfrom"gatsby-image"functionrenderImage({file}){console.log({file})return}//StatelessImagecomponentwhichIguesswill//receivet