草庐IT

GL_ARB_ES

全部标签

javascript - 使用 ES6 模块而不是揭示模块模式的额外优势是什么?

我正在探索ES6module并试图找出使用ES6模块而不是closure以及modulepattern(国session员)。例如ES6中的util.js。varutil={abc:function(){//functionbody},def:function(){//functionbody}exportdefaultutils;//hereexportisexposingtheentireobject}util.js使用闭包和模块模式varutil=(function(){function_abc(){console.log("abc")//functionbody};functi

javascript - 解构es6但传递动态变量

说我的状态是这样的:{item:{a:'a',b:'b'}}然后我可以通过以下操作从项目中提取a:const{a}=this.state.item但可以使用es6的{}动态拉取吗?例如const{variable}=this.state.item,其中variable可以是a或b. 最佳答案 作为4castle指出,你可以使用Computedobjectpropertynamesanddestructuring带有用于解构的附加键/值对变量。varobject={item:{a:'a0',b:'b0'}},key='b',value

javascript - SpyOn 单独导出 ES6 函数

tl;dr:我使用Jasmine;我想测试调用bbb的aaa函数模块;我想监视bbb,但最终aaa调用了原始的bbb函数,不是spy;如何强制aaa调用spy程序?模块:exportfunctionaaa(){returnbbb();}exportfunctionbbb(){return222;}测试:import*asutilfrom'my-module';describe('aaatest',()=>{letbbbSpy:Spy;beforeEach(()=>{bbbSpy=spyOn(util,'bbb');});it('shouldreturnSPYED',()=>{bbbSp

javascript - 在 ES6 : "Failed to resolve module specifier "vue""中导入包

尝试遵循一些Vue教程,但我目前无法在.js文件中导入Vue,然后在我的index.html中导入此文件。这就是我在index.html中导入脚本的方式:如果我在我的main.js文件中这样做:importVuefrom'vue';我在浏览器控制台中收到以下错误:UncaughtTypeError:Failedtoresolvemodulespecifier"vue".Relativereferencesmuststartwitheither"/","./",or"../".如果我的导入行:importVuefrom'../../node_modules/vue';然后我得到一个不同的

javascript - 支持 Mocha ES6 测试吗?

我正在尝试使用expect使用mocha进行测试,用ES6编写,即使是一个简单的测试用例也出现TypeError:importexpectfrom"expect";describe('Example',()=>{it('shouldjustwork',(done)=>{expect(5).to.eql(5);done();});});我正在使用Babel来转换和运行测试:./node_modules/.bin/mocha--compilersjs:babel/registerexample.js结果是:Example1)shouldjustwork0passing(76ms)1fail

javascript - 我可以在 ES6 的生产环境中使用 Babel Require Hook 吗?

我有一个使用ES6的Node应用程序。我正在使用Babel用于转译。据我了解,例如使用像Gulp这样的构建系统或使用requirehook.RequireHook方法似乎对我很有吸引力,因为我将能够将我的源文件保留在ES6中,但仍然使用nodeserver.js执行它们,而无需使用某些构建系统。这至少对开发来说似乎非常有用,我主要担心的是在生产中使用这种方法。每次用户发出请求都会受到惩罚吗?这究竟是如何运作的?对于上下文,我将它与Express应用程序一起使用。 最佳答案 Doesithaveanypenaltyhiteveryti

javascript - 在 Google Apps 脚本中使用转译的 ES6 => ReferenceError : "SomeClass" is not defined

我正在尝试在Google电子表格(在script.google.com部分)中使用ES6。我是JavaScript的新手,也许错误是微不足道的......28/09:帖子的错误已更改,因为我只是使用GoogleApps脚本库名称(Logger),我切换到SomeClass。我正在寻找模块,因为我的声明不是很好我做了什么:创建了一个webpack项目创建了一个Logger类创建了一个main.js,我在其中导入了Logger类WebPack从我的main.js生成一个包我将bundle.js复制/粘贴到script.google上的捆绑文件中我尝试在script.google中运行测试,

javascript - 为什么 `this` 在 ES6 箭头函数中不起作用?

这个问题在这里已经有了答案:ArrowFunctionsandThis[duplicate](5个答案)关闭7年前。这是我的代码:'usestrict';letobj={username:'HansGruber',hello:()=>'hello,'+this.username};console.log(obj.hello());但输出是:hello,undefined。我希望输出为:你好,HansGruber。我想我还没有理解箭头函数中的this。谁能给我一个明确的解释?

javascript - 如何在 mapbox gl 中以编程方式关闭所有弹出窗口?

所以,我知道我们在MapboxGLAPI中有Marker.togglePopup()。但是我们可以通过编程方式关闭所有弹出窗口吗? 最佳答案 这是一个例子:https://jsfiddle.net/kmandov/eozdazdr/单击右上角的按钮打开/关闭弹出窗口。假设您有一个弹出窗口和一个标记:varpopup=newmapboxgl.Popup({offset:[0,-30]}).setText('ConstructionontheWashingtonMonumentbeganin1848.');newmapboxgl.Mar

javascript - 除了执行 Object.prototype.hasOwnProperty.call(obj, key) 是否有 ES6+ 替代方案?

检查对象是否具有特定键的最可靠方法是:Object.prototype.hasOwnProperty.call(obj,key)这提供了一定的保证:如果key是obj的direct属性,它只会评估为true,即使obj没有通常的Object作为其原型(prototype)(例如,如果它是用constobj=Object.create创建的)(null)).但这是一口。在ES6或更高版本中是否有任何新的语法/方法(包括polyfillable或Babel可编译的“建议”)提供相同的保证,但以更好、更易读的方式? 最佳答案 我不知道这有