问题标签 [es6-class]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
451 浏览

polymer - Polymer 2.x:ES6 基于类的语法,元素定义

在此处的预览文档中,有以下代码:

我的问题是:MyElement第一行中的位是否必须与第二行中的位匹配my-element?第一位是否以任何方式受到第二位的约束?或相反亦然?

0 投票
1 回答
667 浏览

javascript - 如何在 webpack 将 es6 类绑定到函数后实例化它

我正在关注 es6 类教程并制作了一个不错的 d3 小可视化。然后我做了第二个,并认为我应该做一些关于将它们捆绑到库中的事情,所以最初尝试了模块(然后发现浏览器还不支持它们),然后我安装了 webpack 1.13 并使用require()了(因为虽然它看起来import应该工作,它没有;直到 2.0 才支持)。

只是,现在不是export default class Foo(data, args)在我的 bundle.js 中,我有var Foo = function () { function Foo(data, args) ....

当我尝试时,解释器只是抱怨Foo.Foo(data, args),但我的直觉是,以这种方式假装实例化一个 frankenclass 可能不是 webpack 的意图?是的,我可以将所有模块文件连接到我自己的 bundle.js 中,然后 go new Foo(),但我正在尝试使用适当的捆绑工具。

我觉得在线文档中 ES6 中的“可能”与您如何在 webpack 中实际实现之间存在相当大的差距。

使用 webpack 捆绑模块的分步方法是什么,以便您可以从 index.js 脚本中的捆绑包中实例化您的类?


附录:(到目前为止我做了什么)

0 投票
7 回答
40813 浏览

javascript - 将 ES6 类对象序列化为 JSON

我想将myClass对象序列化为 json。

我能想到的一种简单方法是,因为每个成员实际上都是 javascript 对象(数组等)。我想我可以维护一个变量来保存成员变量。

this.prop.foo = this.foo等等。

我希望toJSON/fromJSON为类对象找到一个库,因为我将它们与其他语言(如 swift/java)一起使用,但找不到用于 javascript 的库。

也许类构造太新了,或者我所要求的可以在没有库的情况下以某种方式轻松实现。

0 投票
1 回答
381 浏览

javascript - 引用 ES.next 静态类属性的正确方法是什么?

我有以下代码,它按预期工作,但我不相信这是正确的方法:

为什么不能像静态 getter 那样constructor引用静态变量?this.uploadCount是否有更好/正确的方法来跟踪实例化Upload对象的数量?

0 投票
1 回答
86 浏览

ecmascript-6 - 设置 ES6/ES2015 导入包的属性

我是 ES5 中 ES6 的新手,我能够设置任何需要(导入)包的属性,如下所示

client包中,我们能够访问 client.conn。像这样

现在在 ES6 中我正在尝试这样做

但我无法访问conn变量。我怎样才能以正确的方式做到这一点。

0 投票
2 回答
368 浏览

node.js - 单例继承错误行为

我在使用单例模式的 javascript es6 继承中发现了错误行为。

代码是

显示是

遗产不知何故搞砸了。这里属性被覆盖,但对象方法没有。

我的问题是它为什么会起作用(就像现在抛出),你能解释一下这种行为吗?

似乎新对象需要全新的对象作为父对象(请参见下面的解决方案)。


如果你遇到同样的问题,这里是我的解决方案:


我使用 node.js v6.9.1

0 投票
1 回答
800 浏览

javascript - 在 JavaScript / ES7 类中动态调用静态方法

我在字符串变量中有className。我想在动态类上调用 addField 静态方法。

CustomClient 是 ES7 类的名称。addField 是静态方法。我想动态调用 addField 。该类可以是 CustomClient、CustomContract 或 CustomUser 之一。

0 投票
1 回答
838 浏览

javascript - 如何在 React 中实现“正常”的 ES5 原型继承?

我的印象是 ES6 类基本上是围绕 ES5 对象系统的语法糖。当我试图在没有转译器的情况下运行 React 时,我认为我可以使用旧语法来定义从 React.Component “继承”的对象“类”。

但这不起作用!

在这个 gist 中找到了替代方案,并且以下工作:

我还发现我可以使用React.createClass助手。

但我仍然想了解为什么 React 不能处理以这种通用方式定义的类。在我看来,ES6 类在使用之前就已经实例化了。我看不出为什么 ES5 风格的类也不会被实例化,结果相似。

0 投票
2 回答
1987 浏览

angularjs - AngularJs 1.5 ES6:控制器中未定义的绑定

传递给组件的绑定在 html 中工作,但在控制器中未定义。

hero.component.js

HeroController.js

英雄.html

我正在使用角度版本1.5.0

0 投票
1 回答
1894 浏览

node.js - 初始化全局类并使其在整个节点应用程序中可用

因此,我在当前项目中有一个位置,我正在初始化一个 APN(Apple 推送通知)连接,但我需要初始化它,因为我不需要多个连接实例。目前我有一个创建连接并将我们需要的侦听器放在连接上以监视错误等的类。它看起来像这样:

现在可能需要在多个位置使用它,但正如我所说,我希望整个应用程序只有一个 APN 连接的连接实例。

那么,最好在应用程序的主文件中初始化它并使其成为命名导出,还是应该以其他方式启动?如果可以避免,我认为导入整个主应用程序文件不是一个好主意,但这样做可能没有问题?

另外,如果这太主观了,我很抱歉,但我认为我还没有在这里看到过这个问题,也没有在我的谷歌搜索中回答过这个问题,而且它似乎有一个或多个好的解决方案。