Data.Aeson 导入密钥

Data.Aeson import Key

我有以下代码用于从对象解析 Int。但是找不到 Key.

的正确导入
parseInt :: Object -> Key -> Parser Int
parseInt v field =
  asum
    [ v .: field,
      do
        s <- v .: field
        case readMaybe s :: Maybe Int of
          Nothing -> fail "not a number"
          Just x -> return x
    ]

我试过了

import Data.Aeson

import Data.Aeson.Types

但是报错

    Not in scope: type constructor or class ‘Key’
    A data constructor of that name is in scope; did you mean DataKinds?

在我的函数中 Key 的正确导入应该是什么?

看起来您正在编写针对 aeson 2.x 的代码,但您安装了 aeson 1.x。要么升级(推荐),要么使用 Text 代替 Key