在我的項目中,我使用需要集合名稱的包在集合中進行一些搜索。我剛剛遷移到Meteor 1.3,現在這個軟件包不起作用。如何在Meteor 1.3中僅使用集合名稱獲取集合?
在代碼包使用類似:
const search = (collection_name) => {
let collection = this[collection_name]
...
}
現在收藏是不是在全球範圍內了。 我可以將我的收藏加入global[collection_name] = Collection
我的lib/collections.js
,但我更願意修復軟件包以使其更加靈活,並且與Meteor 1.3兼容。
如果您只知道集合名稱,是否有可能如何獲取Mongo Collection?
我相信你可以做'window [collectionName]',參見http://stackoverflow.com/a/20785981/2805154 –
不,你不行。我的意思是它不會在服務器上工作,這就是爲什麼我提到'全球'。 在Meteor 1.3中,您必須手動添加到全局空間,這不是一個好的解決方案。這將迫使每個Meteor 1.3應用程序創建者(誰在使用我的軟件包)將他們的集合手動添加到全局空間。而使用ES6模塊的主要想法是儘可能地避免全局性。 – Jaro