下面的代码将第三方生成的javascript插入为一个字符串,需要对该字符串进行eval‘’ed。
(ps (let ((x (lisp (json:encode-json-alist-to-string
'((:a . 1) (:b . 2))))))))
"(function () {
var x = '{\"a\":1,\"b\":2}';
return null; })();"有没有办法让文本插入一个没有引号的字符串?
发布于 2015-05-23 23:38:08
将此添加到parenscript的非cl.lisp文件中:
(define-expression-operator lisp-raw (lisp-form)
`(ps-js:escape
,lisp-form))
(defun lisp-raw (x) x)结果:
(ps (let ((x (ps::lisp-raw (json:encode-json-alist-to-string
'((:a . 1) (:b . 2))))))))
"(function () {
var x = {\"a\":1,\"b\":2};
return null;
})();"https://stackoverflow.com/questions/30415081
复制相似问题