2013-07-07 60 views
4

我有興趣爲優秀的three.js 3D庫製作智能包。它基本上由數百個不同的JavaScript文件組成 - 其中只有幾個可用於簡單應用程序。整個圖書館的隕石智能包?

AFAIK,智能包將Package.on_use回調中的add_files方法將其JavaScript文件推送到客戶端。如果我要將整個庫整合到一個智能包中,客戶可以通過任何方式來指定它對於任何給定項目所需的組件,或者我基本上必須爲每個可能的組件需求設置一個單獨的智能包?

+0

+1好問題。目前似乎沒有辦法在服務器端巧妙地部署文件。 –

回答

4

既沒有Meteorite也沒有智能包API直接支持這個AFAIK。

這裏有三個選項:

  1. 如果這是其他用戶使用,你可以有一個網頁的地方,爲用戶組裝一包(看看他們的網站上做什麼升壓)。

  2. 只是不要使用智能包。把所有的JavaScript文件放在你的公共目錄下,並使用jquery單獨下載它們。

  3. 您可以將three.js項目拆分爲多個智能包,在packages目錄中放入一個虛擬包,並使用api.use(...)函數來包含您需要的每個組件。

只要記住,three.js所已經在大氣中,如果下面的念頭閃過你的頭腦,你應該避免把數百個微小相互關聯的子包的氛圍。

而在技術上add_files是在運行服務器或部署之前添加文件以放入包中,它不直接發送文件到客戶端。

+0

是的,無論出於何種原因,當我昨天早些時候搜索它時,已經存在的three.js包沒有出現。可悲的是,它似乎也遇到了這個問題。謝謝! – Noz