草庐IT

Realm管理

全部标签

JavaScript 内存使用管理

我正在构建大量使用JavaScript的大型网站,我的所有内容都是通过ajax加载的,它与Facebook非常相似,并且由于有很多不同的页面,我需要很多JavaScript,所以我想到的是将我的脚本分成几个部分,每个页面都有自己的脚本文件。现在加载很简单,我只需为每个页面加载一个新文件,但我担心如果用户浏览100个不同的页面并加载100个不同的脚本文件会发生什么情况?目前我的网站没有那么多页面,但我很确定在未来的某个时候它会增长到近100个独特的页面。那么电脑速度较慢的用户会怎样呢?我猜它会开始放慢很多,因为不会有刷新。根据我的阅读,不可能以任何简单的方式从加载的脚本文件中卸载所有事件

javascript - 为什么谷歌网站管理员工具看不到我网站的静态版本,而是动态版本的模板?

我添加了spiderablepackage打包到我的Meteor应用程序,并在使用?_escaped_fragment_=发出请求时返回页面的html版本在网址中,但我无法让Google抓取该网站。详情使用FetchasGoogle时在GoogleWebmasterTools并请求根页面"http://example.com/"页面返回是javascript版本;像这样的东西:HTTP/1.1200OKcontent-type:text/html;charset=utf-8date:Fri,30Nov201205:39:36GMTconnection:Keep-alivetransfe

javascript - Backbone.js 内存管理,增加 DOM 节点数

情况:我正在开发一个相当复杂的单页Backbone应用程序,它可能会连续运行8-12小时以上。因此,需要确保应用程序不会泄漏,也不会因X小时后崩溃或速度急剧下降而出名。应用:该应用基于Backbone构建(mv*),Zepto(类似于jquery),Curl(amd装载机)&Mustache(模板化)。问题:我刚刚征服了事件监听器。垃圾收集器似乎在清理这些家伙方面做得很好,但DOM节点数不会停止攀升。问题:是否有适当的方法来处理DOM节点,以便它们被正确地垃圾收集,或者这个DOM节点计数是一个永远不会减少的运行总数?有没有人知道这些框架中的任何一个不能很好地处理DOM节点?可能是mus

javascript - 如何在 reactjs 中管理树组件中的状态

我已经为此苦苦挣扎了几天,试图找出“react”方式来做到这一点。基本上,我有一个树,一个可以任意嵌套的列表列表(列表......),我想要一个组件来显示它并启用重新排列。这是我的数据:vardata=[{id:1},{id:2,children:[{id:3,children:[{id:6}]},{id:4},{id:5}]}]我的第一个步骤是只有一个“树”组件,它在其呈现函数(lookatthecodehere)中构建DOM元素的嵌套列表。这实际上对于少量元素非常有效,但我希望能够支持数百个元素,并且当一个元素在树中移动时重新渲染成本非常高(大约600毫秒,当有几百个元素)。所以我

javascript - Backbone.js 大型多页面应用程序,干净地管理页面转换销毁、创建等

我目前正在构建一个巨大的主干应用程序(Facebook克隆)。在过去的几天里,由于RobConery的出色教程(如果您开始使用MVC3和BBhttp://tekpub.com/productions/mvc3,必看)现在我已经到了需要在我的应用程序中切换页面的阶段,我开始将其连接起来,但感觉就像我自己做了很多这样的事情。这很好,我知道我可以做我想做的事。我已经解决了内存泄漏问题,通过确保在切换页面时取消绑定(bind)并删除我的模型/集合/View,Switchingviewsinbackbonefornavigatingbetweenpages-whatstherightway?但是

javascript - jQuery 和 "this"管理?如何避免变量冲突?

当您编写复杂的jQuery/javascript时,如何在不重新定义之前定义的this变量的情况下使用this?在命名您的this变量(随着嵌套越来越深)时,您是否有经验法则或个人偏好?有时我希望更高范围的变量可用于嵌套函数/回调,但有时我希望有一个干净的平板/范围;有没有一种不用担心变量冲突而调用函数/回调的好方法?如果是,您使用什么技术?一些super愚蠢的测试代码:$(document).ready(function(){console.warn('start');var$this=$(this),$dog=$('#dog'),billy=function(){console.l

javascript - 管理 jQuery 插件

通常,在使用jQuery时,需要包含多个插件。这很快就会变得杂乱无章,尤其是当某些插件需要额外的组件(图像和CSS文件)时。“推荐”的方法有哪些:a.以易于维护的方式管理所需的文件/组件(.js、.css和图像),和;b.将这些插件包更新到最新版本我不一定要寻找一种工具来执行此操作(尽管我认为可以执行此管理的工具会很有用),但更多的是一种思维方式。 最佳答案 更新:这几天有Bower,Component和Browserify它会自动为我们处理以下所有事情。令我惊讶的是,还没有人了解我所做的事情。这就是我管理脚本和资源的方式。我的每个

javascript - Redux - 管理预加载状态

我正在构建一个应用程序,我需要在其中预加载people和planet应用程序启动时的数据(将来可能会添加更多预加载要求)。我想在代表应用程序全局状态的商店中拥有值(value)loaded:.只有当预加载要求people.loaded:true时,该值才会为真和planet.loaded:true是真的。商店看起来像这样:Store├──loaded:├──people:│├──loaded:│└──items:[]├──planets:│├──loaded:│└──items:[]单独的Action创建者发出所需的异步请求和分派(dispatch)Action,这些Action由Pe

javascript - 在 Symfony 2 中管理常见的 javascript 依赖项

我想知道处理跨多个Symfony2包的常见JavaScript(甚至CSS)依赖项的标准最佳实践是什么。根据BookontheofficialSymfonysite:bundle不应嵌入用JavaScript、CSS或任何其他语言编写的第三方库。这似乎是合乎逻辑的,但没有关于如何实际声明或需要常见Assets依赖项(例如jQuery,或更重要的是,特定插件forjQuery)的建议。我强调了特定的插件,因为仅在应用程序布局中包含一个众所周知的、几乎总是被使用的JS框架“有点好”,但插件是必需的,以防万一它被使用。所以如果我不应该把它放在我的包的Resources目录中,那么我的问题如下

javascript - 创建可以管理外部数据的抽象组件

目前我将Vuetify用于基本组件,并希望创建可重用的扩展。例如,包含复选框的列表、具有某些功能的数据表列等。对于这个问题,我将以包含复选框的列表为例。我创建了以下名为CheckboxGroup.vue的组件exportdefault{props:{items:Array,required:true}};此组件将对象数组作为属性并为每个条目创建一个复选框。重要的部分是v-model="item.state"和:label="item.title"。大多数情况下,state属性的名称与title属性的名称不同。出于测试目的,我创建了一个名为Home.vue的View文件,其中包含一组文档