我遵循https://htmx.org/headers/hx-trigger/
中的示例我的观点
def my_view(request):
res = render(request, 'index.html')
res.headers["HX-Trigger"] = ...
return res
此代码有效
res.headers["HX-Trigger"] = "showMessage"
而下面的代码将导致错误SyntaxError: JSON.parse: expected property name or '}' at line 1 column 2 of the JSON data
res.headers["HX-Trigger"] = {"showMessage": "Here Is A Message"}
我该怎么办?
您需要传递一个有效的JSON字符串作为头-而不是字典,因为字典不会自动转换为JSON(这就是客户端无法解析它的原因)。
下面的命令可以工作:
res.headers["HX-Trigger"] = '{"showMessage": "Here Is A Message"}' # Note, this is a string
或者,如果你不想手动生成JSON字符串:
import json
res.headers["HX-Trigger"] = json.dumps({"showMessage": "Here Is A Message"})