facebook/relay

[modern] Same field queried with different arguments overwrites proper results

Open

#2,024 创建于 2017年8月9日

在 GitHub 查看
 (2 评论) (1 反应) (0 负责人)Rust (18,930 star) (1,874 fork)batch import
bughelp wantedwontfix

描述

Given query:

query UsersStatisticsQuery(
  $monthAgo: DateTime!,
  $twoMonthsAgo: DateTime!,
  $threeMonthsAgo: DateTime!,
  $fourMonthsAgo: DateTime!,
  $fiveMonthsAgo: DateTime!
  $sixMonthsAgo: DateTime!
) {
  root {
    statistics {
      usersUpToNow: users_count
      usersUpToMonthAgo: users_count(registered_before: $monthAgo)
      usersUpToTwoMonthsAgo: users_count(registered_before: $twoMonthsAgo)
      usersUpToThreeMonthsAgo: users_count(registered_before: $threeMonthsAgo)
      usersUpToFourMonthsAgo: users_count(registered_before: $fourMonthsAgo)
      usersUpToFiveMonthsAgo: users_count(registered_before: $fiveMonthsAgo)
    }
  }
}

in GraphiQL it gets properly returned:

{
  "data": {
    "root": {
      "statistics": {
        "usersUpToNow": 1282,
        "usersUpToMonthAgo": 1248,
        "usersUpToTwoMonthsAgo": 1156,
        "usersUpToThreeMonthsAgo": 1071,
        "usersUpToFourMonthsAgo": 968,
        "usersUpToFiveMonthsAgo": 737,
      }
    }
  }
}

However, in component:

usersUpToNow: 1282
usersUpToMonthAgo: 1248
usersUpToTwoMonthsAgo: 1248
usersUpToThreeMonthsAgo: 1248
usersUpToFourMonthsAgo: 1248
usersUpToFiveMonthsAgo: 1248

Well… I think it shouldn't have duplicated wrong values. react-relay@^1.1.0

贡献者指南