我在Algolia管理控制台中启用了突出显示功能,搜索结果中的字词包含“”和“”,但它们显示为纯文本而不是呈现作为HTML。换句话说,如果我搜索“test”,我会看到标签中包含“test”一词的所有实例,而不是根据该标签的样式进行渲染。
我呈现结果的代码如下:
column
我觉得我忽视了一些显而易见的事情。
另外 - 在哪里可以找到我可以在模板代码中使用的所有可能变量的引用?我不确定我理解两个括号与三个括号之间的区别。
答案 0 :(得分:5)
关于您的第一个问题,我在C:\Program Files\Wireshark\tshark.exe
或invariant.js
中找不到对instantsearch.js
的引用,但它可能会在其中一个依赖项中使用。堆栈跟踪会有很大帮助。
但是,模板中已经有两件事需要改变:
你对triple braces to avoid escaping of HTML code的需要是对的
您的模板也错过了结束hogan.js
。
通常情况下,当您遇到模板问题时,请尝试使用缩进编写它,这有助于快速查看错误。
>
要显示所有可用属性,您可以使用几乎所有'<strong>' +
' <a href="{{url}}" target="_blank">' +
' {{title}}' +
' </a>' +
'</strong>' +
'<br>' +
'{{type}}' +
'<br>' +
'<i>' +
' <span style="font-size: smaller !important;"' + // Here a closing > is missing
' {{_highlightResult.summary.value}}' + // Here you need to use triple braces
' </span>' +
'</i>' +
'<br>'
小部件上都可用的transformData
参数(请参阅&#34;所有选项&#34;标签{{ 3}})。它通常用于在将数据传递给模板之前修改数据,但也可用于进行一些日志记录。
instantsearch.js
使用此功能,打开浏览器控制台并键入查询以查看对象具有哪些属性。
答案 1 :(得分:4)
突出显示的结果存储在_highlightResult属性中。 因此,您可以使用{{{_highlightResult.title.value}}}代替{{title}},而您将拥有突出显示的HTML值