草庐IT

异步框架和同步框架

全部标签

javascript - 如何使用 vue-test-utils 测试 CSS 框架自定义组件

我使用的是BuefyCSS框架,它提供自定义vue-js组件,例如和,我在测试时遇到了问题标签。import{shallowMount,createLocalVue}from'@vue/test-utils'importBInputPracticefrom'../BInputPractice.vue'importBuefyfrom'buefy'constlocalVue=createLocalVue()localVue.use(Buefy)describe('b-inputPractice',()=>{it('updatesthenamedataproperty',()=>{const

javascript - 如何针对后台多个异步请求导致的延迟优化基于 Web 的应用程序?

我正在设计一个基于瘦服务器客户端MVC架构的模块化RIA。目前,该应用程序仅完成了10%,因此合并设计更改还为时不晚。该应用程序的设计方式使其最初加载时占用空间非常小,并且根据用户执行的操作异步获取大量数据。这些数据可能包括存储在我的服务器中的数据以及来自第三方网络服务(包括社交网络和微博服务)的数据。但是我担心的是,是否有可能在后台运行的多个数据量大的ajax请求会使浏览器停止运行?我最近在一些社交内容聚合服务中观察到一些严重的延迟问题,在分析客户端代码后,我惊讶地发现客户端的应用程序占用空间非常小,在300KB以内。但是,当运行该应用程序时,浏览器(Firefox和IE)经常挂起并

javascript - 如何使这个同步递归函数异步

我有一个递归遍历树的javascript函数。它有两个“标志”变量,在函数本身的范围之上设置为false或true,因此如果在递归“walkTree”函数时将标志设置为true一次,则每次递归都会为true.另一方面,for循环也可能存在带有返回值的函数(如果有东西是for的话)。我遇到的问题是当递归太多时我会出错。我想通过使这个递归函数异步来防止这个问题,我试过将for循环内的subwalkTree()调用放到setTimeout中,但我现在遇到的问题是函数的其余部分将在其余异步操作完成之前执行(并可能返回错误的值)。那么我怎样才能使这个异步,同时仍然确保返回正确的值(而不是递归中的

javascript - 浏览器渲染和 javascript 执行的同步/异步特性

我有一些处理需要几秒钟,所以我想在处理过程中添加一个视觉指示器。.processing{background-color:#ff0000;}Processing脚本:$("#mydiv").addClass("processing");//Dosomelongrunningprocessing$("#mydiv").removeClass("processing");我天真地以为类会应用到div上,UI会更新。但是,在浏览器(至少在Firefox中)运行它时,div永远不会突出显示。有人可以向我解释为什么我的div永远不会突出显示吗?添加类,进行处理,然后删除类;用户界面不会在此期间更

pushstate "hijax"的 Javascript 框架

我们所有的应用程序都是phpmvc并且在客户端顶部有一个非常简单的js行为层。我们想要更多地构建javascript并停止请求“片段”来执行简单的行为(比如,在各处加载不同的jquery插件)。我们不使用javascriptMVC框架,而是在寻找最适合我们新应用的解决方案。最吸引人的解决方案之一是为我们保留渲染服务器端,例如Twitterdoes.他们称之为“Hijax+服务器端渲染”。我们不希望在javascript中有一个完整的mvc框架,但是博客中的这些引用对我们非常有吸引力:Bycontract,ourcomponentsattachthemselvestoasingleDOM

javascript - 使用 Webpack 时框架黑盒化?

是否可以对WebPackbundle的某些部分进行Blackbox,以便Chrome不显示框架内部的堆栈跟踪?例如,在检查React应用程序上的错误时,我不关心框架内的堆栈跟踪条目,而我只想查看与我编写的代码相关的部分。当使用单个文件时,这可以通过“FrameworkBlackboxing”来实现,但我不知道如何使用WebPack包来完成它。 最佳答案 在您的Webpack配置中使用devtool:"#eval"(或在命令行中使用--devtool#eval)似乎同时支持黑盒和适当的堆栈痕迹。

javascript - 异步函数作为回调

我刚开始使用async/await,对它与回调的交互方式感到困惑。例如,fooMethod(function(){returnPromise.resolve("foo");});对比fooMethod(asyncfunction(){//addasynckeywordreturn"foo";});必须以特定方式编写fooMethod才能将async函数作为回调处理吗?如果fooMethod是一个公共(public)库,我怎么知道向函数添加async关键字是安全的?跟进快速路由器,app.get('/foo',function(req,res){returnres.send("foo")

javascript - 不允许窗口将顶层框架导航导航到数据 URL

前面的代码将在新窗口中打开pdf文件。varpdfDocument="data:application/pdf;base64,"+data;window.open(pdfDocument);更新chrome后,它似乎停止工作。显然,chrome删除了数据URL的顶层框架导航。我现在该如何解决我的问题?我需要在新窗口中打开此pdf。任何帮助将不胜感激。更新使用iFrame解决了这个问题。感谢Pedro给我想法。$(function(){setManualFrame();});functionsetManualFrame(){$("#ManualFrame").attr("height",

javascript - 异步等待中的 try catch 问题

我在asyncawaittrycatchblock中苦苦挣扎了几天。asyncfunctionexecuteJob(job){//necessaryvariabledeclarationcodeheretry{do{letprocedureRequests=awaitProcedureRequestModel.find(filter,options);//doingprocesshere...}while(fetchedCount我在这个异步函数中的trycatch是否正确?这就是我创建自定义错误类并全局导出的方式。//error.jsfileclassQueueErrorextend

javascript - 让 <iframe> 异步工作

是否有一篇好文章或如何让iframe或框架与每个页面异步工作?我有一个底部/固定的div包裹在jquery中,可以在包含mp3播放器的悬停时向上滑动。我用iframe引用了播放器。我渲染得很好,但是如果不在页面刷新或导航到另一个页面时重新加载,它怎么能继续播放呢?我希望它固定在每个页面的底部并且不刷新地连续播放。我尝试将iframe放在每个页面中,但仍然没有用。有任何想法吗?谢谢。 最佳答案 如果它必须留在浏览器中(不是下载应用程序或在音乐/视频播放器中读取流),唯一的方法应该是不要真正更改页面,并加载必须使用ajax或javasc