gpt4 book ai didi

javascript - Meteor.js 和 Showdown 扩展 - 如何将表扩展添加到渲染器/转换器?

转载 作者:行者123 更新时间:2023-12-02 17:30:44 24 4
gpt4 key购买 nike

我多年来一直在摆弄自定义 Handlebars 助手,例如:

Handlebars.registerHelper('markdowner', function (input) {

var converter = new Showdown.converter({ extensions: 'tables' });

return converter.makeHtml(input);

});

但我被抛出了:

Uncaught TypeError: Cannot call method 'replace' of undefined 

尝试调用助手时来自 showdown.js。

我还尝试在 Meteor 加载时重新定义转换器,但它被忽略 - 任何有关如何运行摊牌转换器/扩展的想法将不胜感激。

最佳答案

您需要以数组的形式提供扩展,并且还需要将该扩展引用为“table”而不是“tables”(基于 Showdown gitgub 存储库中的 table.js 文件,如下所示)。

var converter = new Showdown.converter({ extensions: ['table'] });

在遇到与您相同的错误后,我刚刚自己实现了这个。

加载扩展程序后,您应该能够从控制台运行它并让它返回一些内容。

$ window.Showdown.extensions.table

要从控制台测试它的工作情况,请尝试以下操作:

new Showdown.converter({extensions:['table']}).makeHtml("| A | B | C | \n |-|-|").htmlSafe()

应该输出

SafeString {string: "<table>↵<thead>↵<tr>↵<th id="a" style="text-align:…C </th>↵</tr>↵</thead>↵↵<tbody>↵</tbody>↵</table>", toString: function}

引用文献

  1. table.js - https://raw.githubusercontent.com/coreyti/showdown/master/src/extensions/table.js
  2. 我在这里找到了数组引用:http://www.sluse.com/view/20863978

关于javascript - Meteor.js 和 Showdown 扩展 - 如何将表扩展添加到渲染器/转换器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23084942/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com