我有一个仪表板,我正在使用 Python
cherrypy
框架和 Mako
模板语言。
我为每个仪表板页面创建了一个 html
文件。
在那里,我使用 Mako
将一些数据传递给 html
并内联 Javascript
。
例如,为了在只有 id 列表时显示某些进程的名称,我传递了一个 Python
dict
将 id 映射到它们相应的名称,并且然后在 ${}
标签中使用字典。
但是,由于我现在将这些 Javascript
代码移动到一个单独的文件中,扩展名为 .js
,我发现只需将相同的 Mako
Javascript
代码中的代码块不起作用。
有什么方法可以在导入到 html
文件中的外部 .js
文件中使用 Mako
模板语言?
这是否被认为是一种不好的做法,当我将它们传递给 Javascript
时,我是否应该使用 XMLHTTPRequest
传递所有这些数据?
最佳答案
Ajax 是执行此操作的“正确”方法。
为了将值动态地插入到单独的 Javascript 文件中,它不能再作为静态文件使用。除此之外,它还增加了一层额外的安全性和可维护性问题,因为您必须处理字符串转义、可能的脚本注入(inject)以及在 Javascript 中使用 Mako 语法。更不用说失去在为静态文件配置的 CDN 或服务器上托管 .js
文件的能力。
关于javascript - 在 Javascript 中使用 Mako 模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25156170/