小编Joh*_*ron的帖子

如何在引号前没有反斜杠的python石墨烯解析器中返回json

我在python(Flask + Graphene)中有一个后端服务器,我需要返回一个这样的JSON对象:

{
      's1': "Section 1",
      's2': "Section 2",
      's3': "Section 3",
      's4': "Section 4"
}
Run Code Online (Sandbox Code Playgroud)

解析器如下所示:

 questionnaire = graphene.types.json.JSONString(
        description='JSON result test')

    def resolve_questionnaire(self, info: graphql.ResolveInfo):
        sections = {
          's1': "Section 1",
          's2': "Section 2",
          's3': "Section 3",
          's4': "Section 4"
        }

        print(json.dumps(sections))
        return sections
Run Code Online (Sandbox Code Playgroud)

在控制台中我看到了print(json.dumps(sections))我期望的结果:

user-api_1  | {"s1": "Section 1", "s2": "Section 2", "s3": "Section 3", "s4": "Section 4"}
Run Code Online (Sandbox Code Playgroud)

但在GraphiQL中,我看到所有带反斜杠的引号: 在此输入图像描述

当我更改为时return sections,return json.dumps(sections)我得到如下结果: 在此输入图像描述

问题是如何在石墨烯解析器中正确返回JSON对象? 我知道有像这里使用的json.replace方法,但我相信我只是以错误的方式生成/传递对象.

json python-3.x graphene-python

4
推荐指数
3
解决办法
2421
查看次数

如何在 D3 附加的 vue.js 对象上启用 v-on evnt

我正在使用 c3 构建一个图表,然后使用 d3 在此图表顶部添加一个 div:

请参阅jsfiddle上的工作示例。

var naviChart = d3
  .selectAll("#chart")
  .append("div")
  .attr("class", "hist-future-btn");
naviChart
  .append("div")
  .text("Hist")
  .attr("class", "hist")
  .attr(":v-on:click", "showHistChart");
Run Code Online (Sandbox Code Playgroud)

即使代码正确生成(通过 Chrome 检查器检查):

<div class="hist" @click="showHistChart">Hist</div> 
Run Code Online (Sandbox Code Playgroud)

该函数showHistChart未被调用。我将上面的行从 Chrome 检查器复制粘贴到 HTML 代码的底部,然后它就可以工作了。所以我们知道 d3 正确生成了代码,但它没有启用 vue 事件

如何启用vue.js动态添加的对象d3.js

我发现这个主题,有非常相似的问题,但它只回答了启用svg 元素上的事件的热门问题,并在评论中打开了我的问题。

javascript events d3.js vue.js

3
推荐指数
1
解决办法
671
查看次数

标签 统计

d3.js ×1

events ×1

graphene-python ×1

javascript ×1

json ×1

python-3.x ×1

vue.js ×1