草庐IT

ES分组

全部标签

javascript - ES6 模块 : re-export as object

我有moduleA导出一些函数://moduleA.jsexportfunctionf1(){...}exportfunctionf2(){...}有没有什么方法可以重新导出moduleB中moduleA的所有导出并使其看起来像一个对象://moduleB.jsexport*asafrom'moduleA';//pseudocode,doesn'twork以便我可以这样使用它?//main.jsimport{a}from'moduleB';a.f1();a.f2(); 最佳答案 暂不支持该语法,但有aproposalforit.您现

javascript - 调用 ES6 方法时绑定(bind)上下文。如何从称为回调的方法中访问对象?

我正在努力思考ES6中类的语法。同时通过BonnieEisenman的LearningReactNative学习Fabricnative。当回调是类“方法”时,我遇到了有关在回调中访问this的问题。我知道有关回调中词法this的问题已在StackOverflow上多次提出。例如在Howtoaccessthecorrect`this`contextinsideacallback?.根据我的在线研究,我找到了一个解决方案。但我不确定这是在ES6中执行此操作的正确方法。当我尝试以下操作时出现了我的问题:classWeatherProjectextendsComponent{construc

javascript - 在 React + ES6 中重置初始状态

我在下面有一个类ElementBuilder,当用户保存他们构建的Element时,我希望状态重置为下面的值。我在这个类中有一些我没有提供的函数,但是它们改变了title、size和color的状态。在ES5中,我的类上有一个getInitialState函数,并且可以在一个函数中调用this.getInitialState()。这个元素在我的应用程序中存在于登录用户的生命周期中,我希望默认值始终相同,无论过去的使用情况如何。如何在不编写设置默认值对象的函数的情况下实现这一点(或者这就是答案)?谢谢!classElementBuilderextendsComponent{constru

javascript - 是否可以将 ES5 JavaScript 与 Angular 2 而不是 TypeScript 一起使用?

是否需要为Angular2学习TypeScript?Angular2可以与纯JavaScript一起使用吗?编辑:我看到像ES6、ES7、Dart这样的语言会编译成JavaScript来执行,但我还没有看到任何直接使用ES5JavaScript的引用。 最佳答案 是的,你可以。去读这个guide.按代码示例上的ES5选项卡将显示与TypeScript相对的常规ES5JavaScript。APIpreview但是,由于显而易见的原因,它是不完整的。所以你可能还没有找到那里列出的ES5方法,其中一些可能会在发布前发生变化。ES5中Ang

javascript - ES8 立即调用异步函数表达式

我没有看到这些构造被广泛使用,但我发现自己编写它们是为了在通常不会返回promise的函数中使用async/await,例如chan.consume(queue,(msg)=>{this.pendingMsgs++;//executedimmediately(async()=>{awaitthis.handleMessage(msg);this.pendingMsgs--;if(cancelled&&this.pendingMsgs===0){awaitchan.close();awaitthis.amqpConnectionPool.release(conn);}})();});相对

javascript - 如何在 javascript 中对这个对象数组进行分组或合并?

例如,我有一个对象数组,如下所示。{name:"McDonald",quantity:4,maleCount:1,femaleCount:0}{name:"KFC",quantity:9,maleCount:1,femaleCount:0}{name:"KFC",quantity:9,maleCount:1,femaleCount:0}{name:"McDonald",quantity:4,maleCount:0,femaleCount:1}{name:"KFC",quantity:9,maleCount:0,femaleCount:1}{name:"KFC",quantity:9,m

javascript - 按数组中的多个属性对对象进行分组,然后求和它们的值

Groupingelementsinarraybymultipleproperties是最接近我的问题的匹配项,因为它确实按数组中的多个键对对象进行分组。问题是此解决方案不会汇总属性值然后删除重复项,而是将所有重复项嵌套在二维数组中。预期行为我有一个对象数组,必须按shape和color分组。vararr=[{shape:'square',color:'red',used:1,instances:1},{shape:'square',color:'red',used:2,instances:1},{shape:'circle',color:'blue',used:0,instances

javascript - 具有 (ES6) 类和继承的 Angular.js DI

背景,我们应用程序中类/模块的当前实现是common.js和CoffeeScript类。我正在拼命寻找可以使用ES6或TypeScript的解决方案,但问题仍然存在。如何使用Angular-1.x通过类继承进行DI?给定代码://SuperService.jsclassSuperService{constructor($http,$q,$etc){//Implementationisnotimportant...}}export{SubService}//SubService.jsimport{SuperService}from'./SuperService';classSubServ

javascript - ES5 的代理替代品

是否可以在不使用Proxy和setInterval的情况下监听属性变化?对于常见对象,您可以使用下面的函数,但它适用于所有现有属性,但不适用于包装后可能添加的任何属性。functionwrap(obj){vartarget={};Object.keys(obj).forEach(function(key){target[key]=obj[key];Object.defineProperty(obj,key,{get:function(){console.log("Get");returntarget[key];},set:function(newValue){console.log("

javascript - 使用 ES6 import 语句时,有没有办法防止未定义的项目?

import{foobar1,foobar2,foobor3,//typo!thiskeydoesn'texistinthemodule.}from'./module_file.js'console.log(foobar1,foobar2,foobar3)//EXPLODES我在使用新的ES6样式导入语句时犯的最常见的愚蠢错误之一是我在对象解构中的一个键中有错字。我想不出有哪个实例是我希望解构赋值中的值是undefined的。如果我尝试导入的其中一项未定义,是否有任何方法可以强制导入语句快速失败?即:import{doesntExistInModule//EXPLODENOW!???}