我通常使用逗号,来设置与上面的 gif 相同的变量类型。
但问题是当我Enter在写入第二个变量后点击时,VS 会自动断线。
作为正式的 Atom 用户,这有点乏味,因为在 Atom 中,无论缩进数字是多少,它都不会断行。(我当前的缩进数是 2。)
我更改并测试了 中的所有选项Tools > Options > Text Editor > Basic > Tabs,但这些选项都没有关闭断线。即使禁用漂亮的聆听也不起作用。
如何关闭此功能?
===================进度更新====================
我已经根据Mozilla和其他教程制作了第一个Async函数。但是,它无法阻止事件,正如我预期的那样。当我在整个代码完成之前多次单击时,它将堆叠。
我的期望是使用async并承诺禁用事件,直到整个代码完成为止,这就是我使用此CodePen示例之类的回调的方式。
此外,我无法完全理解Async和Promise的概念。我认为Async + Promise function现实生活中将诸如书签之类的代码本身分离出来吗?很难理解代码内部发生了什么。
有人可以向我解释异步和诺言如何在代码中起作用并防止事件发生吗?
到目前为止,这是我完成的结果:
class Async {
constructor(elem) {
this.elem = document.querySelectorAll(elem)
this.flag = true;
this.selector(this.elem, 'click');
}
selector(node, eventName) {
node.forEach(item => {
item.addEventListener(eventName, (e) => this.group(e))
})
}
waiting() {
if (this.flag) {
this.flag = false;
return new Promise(resolve => {
setTimeout(() => {
resolve(console.log('waiting . . .'))
}, 2000)
})
}
}
result() {
console.log('test');
this.flag = true;
}
async group(e) {
const a …Run Code Online (Sandbox Code Playgroud) 我一直感到困惑,因为我发现以下两个案例的结果与我预期的不同;
console.log(typeof document.querySelector('.holder'));
console.log(typeof $('.holder'));
Run Code Online (Sandbox Code Playgroud)
浏览器说这2种情况是相同的变量类型,即object。但是,当我尝试添加.each方法时,它说document.querySelector('.holder')不是函数。
console.log(typeof document.querySelector('.holder'));
console.log(typeof $('.holder'));
Run Code Online (Sandbox Code Playgroud)
'use strict'
const createMenuTable = (root, clips) => {
return root.each(() => {
console.log(root);
})
}
let myTable = createMenuTable(
document.querySelectorAll('.table'),
document.querySelector('.layerGroup')
); // When I change the `root` argument to the `$('.table')`, it runs w/o an error.Run Code Online (Sandbox Code Playgroud)
未捕获的TypeError:root.each不是一个函数
我的目标是element像使用jQuery一样使用普通JavaScript 获得一个函数,但不知道如何解决此问题。
值得赞赏的是有人可以向我解释为什么这两个案例即使变量类型相同也不能给出相同的结果。
javascript ×2
auto-indent ×1
each ×1
events ×1
export ×1
factory ×1
import ×1
indentation ×1
jquery ×1
line-breaks ×1
node.js ×1
tabs ×1
variables ×1