我有下面的代码,它应该检索字符串列表并将它们返回到选项菜单。但是,我在#>处收到错误在片段中的自动完成后,“无法找到参数计算机的隐含值:net.liftweb.util.CanBind [scala.xml.NodeSeq with Int => scala.xml.NodeSeq]”
// The html code
<select id="autoComplete" class="marketplace.pharmacy.list">
<option id="drug">Drug Name</option>
</select>
// The snippet
def getAutoComplete(str: String): CssSel = "#autoComplete" #> {
getRxAutoComplete(str) match {
case list => "select" #> list.map { drug =>
drug #> ("option *" #> drug)
}
case List() => NodeSeq.Empty
}
}
// The code to return the results (simplified)
def getRxAutoComplete(str: String): List[String] = {
val list = List("Amoxicillin", "Amoximoxi", "Amoxia")
list
}
答案 0 :(得分:1)
问题是您在匹配语句中返回两种不同的类型。第一个返回CssSel
,第二个返回NodeSeq
您可以通过更改:
来修复它case List() => "*" #> NodeSeq.Empty
或使用net.liftweb.util
中的ClearNodes方法:
case List() => ClearNodes
答案 1 :(得分:0)
您错过了隐式转化。您可能需要导入定义此类隐式转换的库的某些类,以将它们带入您的范围。找到这个课程的确切名称是为了在您的图书馆文档中进行一些研究。