小编mar*_*eck的帖子

如何将JavaScript类型数组转换为JavaScript数组

我有一个JavaScript Float32Array,我想将它转换为常规JavaScript数组.我怎样才能做到这一点?

javascript

24
推荐指数
3
解决办法
2万
查看次数

如何使用 React 测试库测试 `contenteditable` 事件

我正在尝试为我们的富文本组件之一编写测试,该组件是使用 React js 中的 slate js 编辑器实现的。因此,在编写测试时,我正在检索元素 div[contenteditable='true'],但无法模拟更改、模糊、焦点等事件。附加到编辑器组件的处理程序不会被调用。我尝试了多种组合,但没有成功。有人可以帮忙吗?是否可以使用测试库模拟 contenteditable 元素的事件(contenteditable 使用 slatejs 实现)?

contenteditable reactjs slatejs react-testing-library testing-library

6
推荐指数
1
解决办法
2609
查看次数

用于初始化对象的编码模式 - 构造函数(new)与Object.create()(Crockford)

注意:这不是关于经典和原型继承的问题.它是关于用于初始化对象的编码模式.类构造函数创建并初始化对象,而避免new运算符和Object.create()仅用于创建对象并设置原型链.我还没有找到一个在线资源,它解释了在进行Crockford Object.create()方法时进行创建和初始化的最佳实践编码模式.

如果我有一个构造函数(在我的头脑中,这使我的课,虽然我知道类在主流JavaScript中技术上尚不存在)

function Person(first, last) {
  this.name = {
    first: first,
    last: last
  };
}

Person.prototype.tellName = function() {
  return this.name.first + ' ' + this.name.last;
}
Run Code Online (Sandbox Code Playgroud)

然后我可以像这样实例化它

var p1 = new Person('John', 'Doe');
var p2 = new Person('Sven', 'Svensson');
Run Code Online (Sandbox Code Playgroud)

并更改Person.name.first,并Person.name.last分别

p1.tellName();  // Output: 'John Doe'
p2.tellName();  // Output: 'Sven Svensson'

p1.name.first = 'Peter';
p2.name.last = 'Celery';
Run Code Online (Sandbox Code Playgroud)

Person.tellName()使用以下输出执行对象的功能

p1.tellName();  // Output: 'Peter Doe'
p2.tellName();  // Output: 'Sven Celery' …
Run Code Online (Sandbox Code Playgroud)

javascript

5
推荐指数
1
解决办法
264
查看次数

我可以向 GraphQL 边缘添加数据吗?

我在玩 GraphQL,并且遇到了连接和边缘的概念。

据我了解,在连接上看到元数据并不少见,例如totalCount以下代码段中的属性。

type UserFriendsConnection {
  pageInfo: PageInfo!
  edges: [UserFriendsEdge]
  totalCount: Int
}
Run Code Online (Sandbox Code Playgroud)

我的问题是是否可以将任意元数据也放在边缘,以及以下是否是一种体面的方式来做到这一点。

我觉得查询和回复最能说明我在寻找什么。这是role我想放置在有意义的地方的财产。

我觉得它不属于该User类型,因为该角色描述了UserGroup.

# Query

{
  me {
    id
    name
    groupsConnection {
      edges {
        node {
          id
          name
          membersConnection {
            edges {
                node {
                id
                name
              }
              role                             <--- HERE
            }
          }
        }
        role                                   <--- HERE
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)
# Response

{
  "data": {
    "me": {
      "id": "1Edj3hZFg",
      "name": "John Doe",
      "groupsConnection": {
        "edges": [
          { …
Run Code Online (Sandbox Code Playgroud)

graphql

4
推荐指数
1
解决办法
819
查看次数