2011-10-11 57 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上可用)。 –