2017-02-01 160 views
0

我使用blaze.js作爲完整的noob構建了我的第一個meteor.js應用程序,並且該應用程序需要一些TLC。我已經更新到1.4,並且我認爲我需要改變目錄結構,正如meteor js網站上討論的那樣,併爲加載順序添加導入/導出。流星js進口

如果急於加載和延遲加載仍在運行,我該如何找出需要導入的內容?我現在還在圍繞着這個問題,所以如果問題很明顯,請善待。

回答

1

正如您發現的那樣,急切的加載仍在運行,所以我們仍處於過渡期。回答你的問題,「我需要導入什麼?」,這取決於你如何看待它。

從某種意義上說,您不需要導入任何東西,因爲它仍然是熱切加載的。

或者您可以將其中一個文件移動到/ imports中,現在答案是:該文件中的其他內容所需的內容。

我最近經歷了很大的努力,把我們所有的服務器代碼移入/進口,而且非常簡單。 (幾個陷阱,但所有的集合,方法,發佈和常量都很順利)。

我只是挑一個應用層次的概念(讓我們說這是培根),創建的文件夾:

/imports/api/bacon 

...一個個移動的共享和服務器文件到那裏或子目錄那裏。隨着每一步,我想出了外部使用哪些符號,將文件轉換爲ES15模塊,導出這些符號,搜索代碼以查看它們的使用位置,並根據需要添加了導入語句。

我以前沒有使用ES15模塊語法,但流星指南已經足夠清晰,我在幾天內完成了測試,因爲我去了。

我在我的IDE中使用Webstorm,它對代碼提示和標記未知符號很有幫助,所以幫助。

用於我的例子以上,我的目錄結構大致是:

/imports/api/bacon (collection and consts go here) 
/imports/api/bacon/utils (shared utilities go here) 
/imports/api/bacon/server (publishes and methods go here) 
/imports/api/bacon/sever/utils (server utilities go here)