草庐IT

模拟游戏

全部标签

javascript - 在 webpack 捆绑库上模拟 fbasyncInit 行为

我正在使用webpack构建一个针对浏览器的库。我真的很想在不手动修改捆绑库的情况下复制fbasyncinit行为。webpack是否提供了在加载库本身后调用函数的方法?或者是否有另一个允许这样做的替代bundler?对于那些不知道的人,window.fbasyncinit是facebooksdk在完成加载时调用的函数,因此您编写函数来初始化facebooksdk的东西。 最佳答案 根据您的设置,您可能希望将您的库设为外部和lazyload它进入目标应用程序。简而言之,这意味着您的库与应用程序一起存在,但实际上不会在初始化时加载。然

javascript - Jasmine - 如何模拟 history.pushState 和假事件发射?

在history.pushState的帮助下,我正在编写一个支持浏览器导航的库并且还捕获了popstateevent在浏览器中进行导航时进行通信。因为我正在尝试写Jasmine测试这个库,我想知道如何模拟history.pushState并且还伪造了popstate的发射来自window的信号?以下代码片段应该可以说明问题:库代码:varlib=(function(){functionnavigate(path){history.pushState(null,null,path);}functiononPopState(event){if(lib.callback){lib.callb

javascript - AngularJS - 在 Jasmine 测试用例中模拟 ngTableParams

我已经使用ng-table创建了一个应用程序,该应用程序工作正常,但是当我编写一个jasmine测试用例时,我得到了。Error:[$injector:unpr]Unknownprovider:TableParamsProvider谁能告诉我如何模拟ngTableParams并测试其功能我的代码如下Jasmine测试用例describe('TestingControllers',function(){describe('TestingWorkControllerController',function(){varWorkController,$scope;beforeEach(modu

javascript - Angular 2模拟Http get()返回本地json文件

在Angular2中模拟Httpget()返回的响应的最简单方法是什么?我的工作目录中有本地data.json文件,我希望get()返回包含该数据作为有效负载的响应,模拟其余api。为Http配置Backend对象的文档对于这样一个简单的任务来说似乎有些晦涩和复杂。 最佳答案 您需要使用MockBackend提供程序覆盖XhrBackend提供程序。然后您需要创建另一个注入(inject)器才能执行真正的HTTP请求。这是一个示例:beforeEachProviders(()=>{return[HTTP_PROVIDERS,prov

javascript - React/Redux 中的生命游戏,有助于提高性能

我正在使用react/redux/javascript开发TheGameofLife的一个版本,当我使用它时性能很糟糕。HereisalinktotherunninggameHere'sthesourceongithhub目前,我在每个滴答声(用户可更改的250,500,750毫秒)更新每个单元格的状态。为此,我循环遍历代表每个单元格的对象数组。每个对象中都有一个名为status的参数,它可以是一个整数,1表示活着,0表示死了。然后我拉入三行,每行三个单元格,对于相关单元格周围的中间和底部行,我然后对这些值求和(不包括中心的单元格本身)。然后我通过if/then流程运行该数字以确定该单

javascript - 使用 Jest 模拟在 vue 组件中导入的模块

我在处理documentationofJest时遇到一些问题,因为我希望这段代码能够工作:importVuefrom'vue';importRouterfrom'@/router/index';importOrdersServicefrom'@/services/orders.service';jest.mock('@/services/orders.service');describe('OrdersItem.vue',()=>{beforeEach(()=>{//mockCleardoesnotexistOrdersService.mockClear();});it('should

javascript - 在 Javascript 中使用 Jest 模拟整个模块

我搜索了很长时间如何用jest模拟任何模块(就像rewire那样)。我终于设法做到了这一点,而且效果很好:jest.mock('common/js/browser-utils',()=>({openBrowser:jest.fn()}));const{openBrowser:openBrowserSpy}=jest.requireMock('common/js/browser-utils');但我想知道是否有另一种快速方法可以做到这一点?我看到了genMockFromModule方法,但我从来没有让它工作(也许它不适合这种用法。)我想要的很简单:通过jest.fn()(或任何自动机制)

javascript - 模拟 delay() RxJS 与 Jest

例如,是否有简单的方法在一个带有假时间的可观察对象中模拟RxJS的delay()方法?我有这个方法:register(user){returnthis._checkLog(user).delay(500).flatMap(...)}当我删除delay()方法时,我对_register()的测试全部成功。 最佳答案 RxJSv6对于这样的RxJSv6代码:代码.jsimport{of}from'rxjs';import{delay}from'rxjs/operators';exportconstexample=of('hello').

javascript - node.js 存储游戏状态,如何?

我正在用javascript编写一个游戏,为了防止作弊,我在服务器上玩这个游戏(这是一个像更复杂的跳棋一样的棋盘游戏)。由于游戏相当复杂,我需要存储游戏状态以验证客户端操作。是否可以将游戏状态存储在内存中?那聪明吗?我应该这样做吗?如果是这样,如何?我不知道那会怎样。我也可以存入redis。那种事情对我来说很熟悉,不需要解释。但如果我确实存储在redis中,问题是在每一个Action中,游戏都需要从redis获取数据并解释和解析该数据,以便从头开始重新创建游戏状态。但由于移动发生得非常频繁,这对我来说似乎很愚蠢。我该怎么办? 最佳答案

Javascript:如何模拟浏览器 cookie 的实现?

我正在尝试使用node.js创建一个功能齐全的网络代理,它实际上是下载网页并将其显示给客户端。我在实现cookie时遇到了问题,因为它比我想象的要难,因为它们有很多规则。是否已经创建了任何库来模拟浏览器如何处理cookie? 最佳答案 使用request,它已经处理将连续请求的cookie存储在cookiejar中。或者,如果您不想重新发明轮子,请使用node-http-proxy来自Nodejitsu的完整代理。 关于Javascript:如何模拟浏览器cookie的实现?,我们在St