我在Express中集成Mathjax和Jade时遇到问题。我需要在“ pre”中显示公式,所以我试图通过脚本配置Mathjax。这是我的代码:
script(type="text/x-mathjax-config")
MathJax.Hub.Config({
tex2jax: {
inlineMath: [['$','$'], ['\\(','\\)']],
skipTags: ["script","noscript","style","textarea","code"]
}
});
我的问题是,当我尝试查看该页面时会引发此错误:
SyntaxError:意外令牌{
at Object.Function (unknown source)
at Object.exports.compile (/home/andres/web/node-login/node_modules/jade/lib/jade.js:176:8)
at Function.exports.compile (/home/andres/web/node-login/node_modules/express/lib/view.js:68:33)
at ServerResponse.res._render (/home/andres/web/node-login/node_modules/express/lib/view.js:417:18)
at ServerResponse.res.render (/home/andres/web/node-login/node_modules/express/lib/view.js:318:17)
at Promise.module.exports.app.get.Pregunta.find.exec.questions (/home/andres/web/node-login/app/server/router.js:240:16)
at Promise.addBack (/home/andres/web/node-login/node_modules/mongoose/lib/promise.js:128:8)
at Promise.EventEmitter.emit (events.js:88:17)
at Promise.emit (/home/andres/web/node-login/node_modules/mongoose/lib/promise.js:66:38)
at Promise.complete (/home/andres/web/node-login/node_modules/mongoose/lib/promise.js:77:20)
有人知道会发生什么吗?
谢谢。
最佳答案
问题似乎出在type='text/x-mathjax-config'
上。如果我删除了该视图,则该视图将正常显示。如果我保持原样,玉将脚本内容解释为玉标签。我认为这不是玉器中的错误,因为文本模板也应该能够用玉器编写。
无论如何,mathjax似乎需要该类型才能正确执行配置,因此我们需要解决该问题。最简单的解决方案是保持所有内容不变,但在script标记的末尾添加.
。这将使它下面的所有内容都成为文本文字。
script(type="text/x-mathjax-config").
MathJax.Hub.Config({
tex2jax: {
inlineMath: [['$','$'], ['\\(','\\)']],
skipTags: ["script","noscript","style","textarea","code"]
}
});
另外,也许您可以在页面加载后配置mathjax,如here所示。请注意,我对mathjax一无所知,只是浏览了文档。