如何将列表转换为xexpr?

时间:2016-11-13 00:19:26

标签: racket

<ui-select-choices repeat="r in selectedcity | filter: $select.search | limitTo: 10">

我试图获得xexpr。 #lang racket (struct result (q) #:mutable) (define RESULT (result '())) (define (insert-result! result val) (set-result-q! result (cons val (result-q result)))) (insert-result! RESULT "hello") (insert-result! RESULT "wrold") (print (result-q RESULT)) (define (iter l) `(div ((class "result")) ,(for ([i (result-q l)]) `(p ,i)))) (iter RESULT) 应该是 代码运行后RESULT。然后在'("wrold" "hello")函数中我想生成输出:

iter

不知何故上面的代码给了我这个'(div ((class "result")) (p "world") (p "hello"))。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您应该使用:

,@(for/list ([i (result-q l)])
    `(p ,i))

注意使用,@拼接unquote,以及for/list将结果收集到列表中。