2011-10-11 56 views
19

()函数,当我打开Chrome浏览器14和类型的控制台...需要在JavaScript

require(或require(),如果该事项)

我得到:ReferenceError

这意味着JavaScript默认没有该功能,对吧?至少在网页浏览器上。

为什么我在说这个?
我需要JavaScript的Markdown解析器。

怎么办?
我通常会为它打开GitHub和searched。符合我需求的第一个结果是thisthis

通常情况下(我对JavaScript不太好)我在使用<script />标记之前在代码之前加入了我想要使用的脚本,然后......很好地使用它。但是,这一次我不明白发生了什么... :(

使用#1脚本:

var input = "# Heading\n\nParagraph"; 
var output = require("markdown").toHTML(input); 
print(output); 

用法#2脚本:

var marked = require('marked'); 
console.log(marked('i am using __markdown__.')); 

在哪里require()是从哪里来的?谢谢您的建议!:)

回答

23

这是一个办法,包括node.js包。幸运的是,你链接到的第一个包,markdown-js,非常聪明。它会检查它是否包含在节点包中,如果不包含,则会将降价对象设置为window.markdown。因此,您所要做的只是在<script>标记中包含this file,并且您应该能够使用全局范围中的markdown对象。

4

从您链接到的页面:

与CommonJS的使用简单的方法是:

貌似require来自CommonJS

+0

您还可以将Web浏览器的CommonJS/Node.js模块用于浏览器 - https://github.com/medikoo/modules-webmake。 请注意,要移植的模块不应该依赖于Node.js本地模块(如'fs'或'path'),如果是这种情况,您需要为浏览器填充这些本地模块(已经有一些垫片在Github上可用)。 –