2015-05-02 34 views
1

我是新來的流星,我想弄清楚如何在流星中使用pagedownmeteor:如何添加和使用pagedown?

我在client/lib中添加了3個主文件(Markdown.Converter.js, Markdown.Sanitizer.js and Markdown.Editor.js),但這不起作用。

有一個在控制檯一個錯誤:

Uncaught ReferenceError: Markdown is not defined in Markdown.Editor.js

綜觀代碼,MarkdownMarkdown.Converter.js被定義,並且需要在2的其他文件。

另外,我注意到我在lib文件夾中添加的Markdown.Converter.js文件被自動編輯。 當我在瀏覽器中查看頁面時,整個文件已被封裝到(function(){ ... })();。爲什麼? 我想這解釋了爲什麼Markdown不能在其他文件中訪問了。

我錯過了一些東西。這個怎麼用?

感謝

+0

嘗試添加包:https://atmospherejs.com/dwatson/meteor-pagedown而不是使用文件。 – cwahlfeldt

回答

1

由於@waffles提到,使用the package;或將文件放入client/compatibility,而不是client/lib

+0

好的謝謝,似乎工作,我想了解爲什麼流星這種方式雖然。 1)爲什麼meteor在一個新的變量範圍中包含了'client/lib'中的內容? 2)把我的文件放在'client/compatibility'還是使用你提到的軟件包有什麼不同? 3)如何查看包裹的內容(文件)?謝謝。 – Michael

+0

流星並沒有包裹在一個新的變量作用域中,它只是按照與你期望的順序不同的順序加載文件。請參閱文檔中[文件加載順序]部分(http://docs.meteor.com/#/full/structuringyourapp)。客戶端/兼容性比任何應用程序的文件早加載,因此該對象在嘗試調用它之前可用。軟件包甚至更早可用,這就是爲什麼它們是圖書館可用的最佳選擇。你可以通過在'〜/ .meteor/packages'中找到該包來查看包的內容。 –

+0

我不認爲這個問題是加載順序的問題。我沒有在我的應用程序中調用該對象。以下是我的理解:Markdown對象在Markdown.Converter.js中定義,並在Markdown.Editor.js中調用。我確定'Markdown.Converter.js'在'Markdown.Editor.js'之前加載,但Meteor用'(function(){...})();'包裝'Markdown.Converter.js',所以' Markdown'對象不再在全局範圍內,因此在'Markdown.Editor.js'中出錯。謝謝您的幫助。 – Michael

相關問題