这是我在嵌套承诺的第一枪。 我正在使用蓝鸟图书馆,但我认为这个想法对所有的承诺库都是一样的。 在高层次上,这是我想要做的: myService.getSomeData(url) .then((data) => { myOtherService.getMoreData(data.uniqueId) .then((thisDataIsAnArray) => { //loop over the data above and do something }); }); getMoreData()应该使X服务调用并将结果存储在数组X元素long中。 这是我开始迷失的地方,因为我不知道如何制定这个方法,我应该从中返回。 我已经对蓝鸟的Promise.all和Promise.map采取了一些刺激,但我很挣扎,并认为我会征求意见。
我遇到了挑战,我需要一个函数返回一个给定范围内的随机数从0 – X 不仅如此,我要求返回的数字是唯一的 ; 不要复制以前通过函数返回的数字。 可选地,当这完成时(例如,范围已经被“耗尽”),只需返回范围内的随机数。 怎么会这样做?
假设我有以下文件 { _id: ObjectId("5234cc89687ea597eabee675"), code: "xyz", tags: [ "school", "book", "bag", "headphone", "appliance" ], qty: [ { size: "S", num: 10, color: "blue" }, { size: "M", num: 45, color: "blue" }, { size: "L", num: 100, color: "green" } ] } { _id: ObjectId("5234cc8a687ea597eabee676"), code: "abc", tags: [ "appliance", "school", "book" ], qty: [ […]
我想用一行jQuery代码做一个Chrome扩展,但它不工作。 铬的控制台不显示任何错误,当我只把jquery代码在控制台中工作正常。 我在这里有这些代码。 content.js $(document).ready(function(){ $('.like_post:contains(Like)').click();}); background.js chrome.windows.getCurrent( function(currentWindow) { chrome.tabs.query({active: true, windowId: currentWindow.id}, function(activeTabs){ chrome.tabs.executeScript( activeTabs[0].id, {file: 'jquery-2.1.3.min.js', allFrames: true} ); chrome.tabs.executeScript( activeTabs[0].id, {file: 'content.js', allFrames: true} ); }); console.log(currentWindow.id); }); 的manifest.json { "name": "plugin name", "version": "0", "description": "What do I do as an extension", "manifest_version": 2, "browser_action": { "name": "project with jquery", […]
当在JavaScript中使用构造函数来创build类时,是否有可能在之后重新定义类的方法? 例: function Person(name) { this.name = name; this.sayHello = function() { alert('Hello, ' + this.name); }; }; var p = new Person("Bob"); p.sayHello(); // Hello, Bob 现在我想重新定义说sayHello这样的: // This doesn't work (creates a static method) Person.sayHello() = function() { alert('Hola, ' + this.name); }; 所以当我创build另一个Person ,新的sayHello方法将被调用: var p2 = new Person("Sue"); p2.sayHello(); // Hola, […]
我正在用JavaScriptencryption我的用户密码,如下所示: var encryptedPassword = CryptoJS.AES.encrypt(password, "Secret Passphrase"); 它工作正常,但现在我试图解密在服务器端PHP这样的: $iv = mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC), MCRYPT_RAND); $decryptPassword = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, "Secret Passphrase", base64_decode($password), MCRYPT_MODE_CBC, $iv); 它根本不起作用,解密的密码string看起来很奇怪: string(64) "> OX2MS 댗v <$ ʕ i ̄ _ P \ կ= _6( m ,4WT7 a" 以下是有用的评论之后,我的代码在JavaScript中的当前状态: var encryptedPassword = CryptoJS.AES.encrypt(password, "Secret Passphrase"); var ivHex = encryptedPassword.iv.toString(); var ivSize = encryptedPassword.algorithm.ivSize; // same […]
我有一个configurationfunction: function config($stateProvider,$locationProvider) { $locationProvider.html5Mode(true); $stateProvider .state('projectsWs.tasks', { url: "/tasks", views: { "mainView": { templateUrl: "/app/projects/templates/index.php" }, "innerView": { templateUrl: "/app/projects/templates/tasks.php", controller: tasksCtrl, controllerAs:'tasks' } } }) .state('projectsWs.tasks.detail', { url: "/:taskId", views: { "mainView@": { templateUrl: "/app/projects/templates/index.php" }, "innerView@mainView": { templateUrl: "/app/projects/templates/tasks.php", controller: function($stateParams) { console.log('innerViewCtrl', $stateParams); } } } });} InnerView在mainView中。 当我得到像/projects-ws/tasks这样的url时, tasksCtrl函数按预期工作。 但是,当我有一个ID的url,即/projects-ws/tasks/32 […]
我需要一些帮助与callback。 出于某种原因,他们工作得不好。 我正在用jQuery做一个游戏。 对于游戏中的所有button,我都有一个<div id='button'></div> “。 游戏将有两个button,使行动,并在其上的问题。 问题由<h3 id='text'></h3> 。 我想知道的是,由于某种原因,我不能将callback函数设置为button的ID。 在例如,我会有是或否,有自己的ID设置通过jQuery像这样: $('#button').html('<button id='yes'>Yes</button><button id='no'></button>'); 但由于某种原因,我可以设置这个: $('yes').click(function(){ //function I would want }); 当然,这不是我的代码,这只是一个例子。 这是真实的代码: $(document).ready(function(){ $('#main,#batman,#car,#cop,#hobo,#knife,#gangfight,#ganggun,#gangknife,#blood,#hr').hide(-100); var hr=$('#hr'); var main=$('#main'); var batman=$('#batman'); var car=$('#car'); var hobo=$('#hobo'); var cop=$('#cop'); var knife=$('#knife'); var gangfight=$('#gangfight'); var ganggun=$('#ganggun'); var gangknife=$('#gangknife'); var blood=$('#blood'); var text=$('#text'); var button=$('#button'); $('#start').html('Are you ready […]
我只想为那些有图片的用户显示来自gravatar的个人资料照片。 做这个服务器端意味着做大约100个HEAD请求到gravatar检查404代码和适当地输出每个请求的img标记。 所以,我想实现一个JavaScript函数,我可以只输出100个url,其中的JavaScript可以检查HTTP状态代码,并dynamic地输出适当的图像标签。 这甚至可能吗? 怎么样?
我有以下代码,我不明白为什么我重新声明get方法时不能访问私有属性。 (function(w,d,a,undefined){ var cfg = { currency: 'GBP', exponent: 2 }; var get = function () { return cfg; }; a.init = function (settings) { for (var k in settings) { cfg[k] = settings[k]; } }; a.set = function (args) { get = args.get || get; //eval(args) //works but why?? }; a.get = function () […]