在Django视图中将文件中的markdown传递给模板

时间:2016-12-20 08:53:38

标签: javascript python html django showdown

我正在尝试从我的Django视图传递* .md文件的内容,以便使用Showdown(下面的JS代码)进行渲染,但我得到:Uncaught SyntaxError: Invalid or unexpected token

var converter = new showdown.Converter({
    'github_flavouring': true,
    'tables': true
});
var convert = function() {
    $('#preview').html(converter.makeHtml($('{{markdown}}')));
};
convert();

1 个答案:

答案 0 :(得分:0)

我通常更喜欢使用隐藏的div来包含我的降价数据:

<div id="markdown" style="display:none;">
    {{markdown}}
</div>

然后您可以在JavaScript代码中引用如下:

var converter = new showdown.Converter({
    'github_flavouring': true,
    'tables': true
});
var convert = function() {
    $('#preview').html(converter.makeHtml($('#markdown').text()));
};
convert();

[编辑]对于ES6,你也可以尝试使用反引号(`)来封装你的降价数据,这会使它成为一个多行字符串,但由于markdown使用反引号突出显示代码,这会导致问题(除非你'确保你的降价数据中永远不会有代码块。)