草庐IT

es-head插件

全部标签

javascript - es6 { [a] : b } destructuring mean? 是什么

这里有一些解构:const{[a]:b}=this.props但是,[a]:b是做什么的:带冒号的方括号是做什么的?在我的例子中,a作为具有字符串值的Prop之一提供。 最佳答案 这种ES6解构语法与用于定义具有可变属性名称的对象的新“增强对象文字”非常相似,因此我认为首先了解它很有用:在ES6之前,如果你想给一个属性名可变的对象赋值,你需要这样写varobj={};obj[variable]=value这是因为虽然点表示法和对象字面量表示法都需要使用实际的属性名称,但obj[prop]表示法允许您使用变量名。ES6引入了扩展对象字

javascript - 使用 Firefox 插件的跨域通信

Firefox插件allowyoutodocross-domaincommunication.有什么方法可以公开此功能,以便我可以从任何页面启动跨域ajax(假设我已经安装了此插件)?编辑:我知道什么是CORS,只有当你控制了服务器时,CORS才有意义,但我不知道。这里的重点是我控制浏览器,我承担风险所以我问是否无论如何将跨域功能从插件阶段导出到用户空间。 最佳答案 正如您所说,同源策略仅用于保护客户端(您自己),通常免受XSS攻击。我不确定你想用插件实现什么,但你当然可以trydoingthefollowingonyourownm

javascript - 使用 JavaScript ES6 模块导入现有库

如何使用JavaScript的ES6模块加载和运行现有库?例如,假设我需要加载一个现有的polyfill:import{poly}from"thirdParty/poly";如何运行导入的poly脚本并将其属性加载到当前命名空间而不更改源?这里有两个实际问题可以帮助阐明我要解决的问题:我有一个名为rafPolyfill.js的脚本这是window.requestAnimationFrame的polyfill。我需要将它导入全局范围并在加载后立即运行它。使用很容易做到这一点标签:它运行并将自身加载到全局范围内。如何使用ES6模块完成此操作?我有另一个名为Font.js的脚本这是字体的预加

javascript - ES6 箭头函数正在改变 Meteor.publish 中 this 的范围

这个问题在这里已经有了答案:Whatdoes"this"refertoinarrowfunctionsinES6?(10个答案)关闭7年前。所以我开始在Meteor中使用ES6,但显然如果你尝试使用带有箭头函数的Meteor.publish语法,this.userId是未定义的,而如果您将它与常规function(){}一起使用,this.userId可以完美运行,我假设是一种分配不同这,到userId但这只是一个猜测,有谁知道到底发生了什么?Meteor.startup(function(){Meteor.publish("Activities",function(){//withf

javascript - Jest : Mock ES6 Module with both default and named export

我有一个带有默认导出和命名导出的ES6模块:/**/src/dependency.js**/exportfunctionutilityFunction(){returnfalse;}exportdefaultfunctionmainFunction(){return'foo';}它被第二个ES6模块使用:/**/src/myModule.js**/importmainFunction,{utilityFunction}from'./dependency';//EDIT:Fixedsyntaxerrorincodesample//exportdefaultmyModule(){expor

javascript - 我如何 "plug in"sigma.js 的插件?

Sigma.js列出了几个examples在他们的GitHub上,但他们不清楚加载插件需要什么。我试过简单地包含一个指向插件的JavaScript文件的标记,但这不起作用。如何将插件导入/使用/复制粘贴到我的站点? 最佳答案 首先,包含您需要的sigma文件:然后开始你的脚本;functioninit(){//Instanciatesigma.jsandcustomizerendering:sigInst=sigma.init(document.getElementById('graph')).drawingProperties({

javascript - 如何在 browserify 中要求代码镜像的模式、主题或插件

有没有人尝试通过browserify使用代码镜像?我发现没有任何东西是可见的,即使它已经生成了所有的html标签。代码:varCodeMirror=require('codemirror');require('codemirror/mode/javascript/javascript.js');vareditor=CodeMirror.fromTextArea(document.getElementById("code"),{lineNumbers:true,extraKeys:{"Ctrl-Space":"autocomplete"},mode:{name:"javascript",

javascript - ES6 为什么在循环中定义时可以重新分配常量

我正在尝试一些毫无意义的逻辑以更好地理解ES6,并且在定义常量时注意到了一个奇怪的现象。在循环中定义时,似乎可以更改常量赋值:"usestrict";for(consti=0;i这是预期的行为吗?任何人都可以阐明为什么会发生这种情况,循环中的声明是否不同?更新自Statements/constThisdeclarationcreatesaconstantthatcanbeglobalorlocaltothefunctioninwhichitisdeclared.Constantsareblock-scoped. 最佳答案 当您修改“

javascript - window.System 对象是 JavaScript ES6 的必需部分吗

不久前我读到Systemobject是es6模块的必需部分,基本上是一种新的对象类型,具有模块加载所需的所有语义。这是严格的es6要求吗?它似乎不在最新规范中。 最佳答案 全局System对象不是ES2015的一部分。包含System的模块加载API已从ES2015规范中删除Draft28,October2014.模块加载现在由单独的WhatWGloaderspec跟踪.在https://github.com/ModuleLoader/es6-module-loader的草案27(包括System)中指定了模块加载器API的实现。.

Javascript (ES6) 可迭代流

是否有使用ES6生成器使流可迭代的模式?请参阅下面的“MakeStreamIterable”。import{createReadStream}from'fs'letfileName='largeFile.txt'letreadStream=createReadStream(fileName,{encoding:'utf8',bufferSize:1024})letmyIterableAsyncStream=MakeStreamIterable(readStream)for(letdataofmyIterableAsyncStream){letstr=data.toString('utf