我正在尝试使用CSS Selector Transforms来完成一些Lift示例.我正在尝试这种转变:
- NodeSeq => NodeSeq - 一个转换节点的函数(是的,它可以是一个CssBindFunc):
"#name" #> ((n: NodeSeq) => n % ("class" -> "dog")) // <span id="name"/> -> <span id="name" class="dog"/>
这就是%现在给我带来麻烦的.当我尝试编写这样的代码时,我得到了错误value % is not a member of scala.xml.NodeSeq.是否有进口或我缺少的东西?
这是我的片段:
import scala.xml._
import net.liftweb.util.Helpers._
import model.User
class Users {
def show = {
".userName" #> "name replaced" &
".userEmail" #> "email replaced" &
".changePassword" #> ((n: NodeSeq) => n % ("href" -> "changePassword"))
}
}
Run Code Online (Sandbox Code Playgroud)
仅Elem包含%方法. NodeSeq不是一个Elem,而是一个Nodes 的集合,可能是也可能不是Elem.而且我不确定Lift的助手是否包含创造的含义MetaData,但如果没有,你需要类似的东西
myNodeSeq map {
case e: Elem => e % new UnprefixedAttribute("href","changePassword",xml.Null)
case x => x
}
Run Code Online (Sandbox Code Playgroud)
涵盖一般情况.