2013-01-02 49 views
3

這與我在meteor向客戶詢問有關conditionally sending document data的上一個問題有關。我如何有條件地發送模板和JavaScript文件到流星的客戶端?

假設我有一個parse-like data editor/browser可用於標記爲系統管理員的用戶帳戶,以及顯示有關該應用的日誌記錄信息的一些頁面。我正在使用meteor-router和一個過濾器來實現這一點。

99%的用戶不需要查看這些接口,但是(大量的)javascript仍然會發送到客戶端。管理員特定的javascript和模板被分離到它們自己的文件中,我怎樣才能確保它們不會被不必要地發送到客戶端(當登錄用戶不是管理員時)?

真的是最好的選擇將管理界面分成一個單獨的應用程序,並指向它的原始mongo

+0

好像我問同樣的問題:http://stackoverflow.com/questions/18586986/how-to-determine-which-css-file-will-be-sent-to-clients/18591051?noredirect=1# 18591051 – hakan

回答

2

如果您不希望Meteor自動加載您的客戶端腳本,您可以將它們放在/ public目錄中並在需要時自行加載它們。

但是,對於管理環境來說,從軟件開發的角度來看,它可能更好,將所有這些分離到它自己的應用程序中,指向與您所說的相同的數據庫。

+0

除了需求以外,如何不加載某些模板文件? – Diogenes

+1

不知道。我不認爲這是可能的或你想要的,因爲流星必須解析所有的模板文件,並生成相應的模板JavaScript以便能夠跟蹤它們等。 – Rahul

+0

我發現了一個包(2實際上)你的建議: https://atmospherejs.com/numtel/publicsources和 https://atmospherejs.com/numtel/privatesources 它使用的鐵路由器插件從/公共加載特定的文件或/私人文件夾。 – dani