流星樣板
一個帶有一堆有用功能的大火 + FlowRouter的流星現成的應用程序,在ES6中寫下
github存儲庫:https://github.com/fen747/meteor-boilerplate
大衛·潘納特(David Panart)又名。 Fen747
版本1.1.3
請參閱版本更改
隨意分配此存儲庫。
如果您覺得很酷,請不要忘記飾演它!
使用此樣板的公共項目:
安裝
- 克隆此存儲庫: git克隆https://github.com/fen747/meteor-boilerplate
- 更改目錄: CD Meteor-Boilerplate
- 安裝NPM依賴項: Meteor NPM安裝
- 享受 !
Doc
軟件包(/.meteor/packages)
- 預先安裝的一堆非常有用的軟件包要么需要安裝在您的應用中
更改Globals(/BOTH/_GLOBALS.JS)
Lodash
- 該應用程序已經安裝了Erasaur:lodash軟件包,並將其混合到“ _”,而不是下劃線
- 眾所周知,Lodash具有與UndScorejs相同的API,但性能更好,還有更多功能
Meteor.user()
- 我優化了Meteor.user()函數
- 現在可以將其與字符串用作參數一起使用,以使特定用戶上的findone別名
- 此外,您可以傳遞一系列字符串以自動過濾所需的字段,以減少無用的重新訂閱者 /自動自動無效的數量
- 的確,默認的Meteor.user()函數返回整個用戶文檔,這意味著如果任何DOC的任何字段更改,則任何反應性計算都將無效,這對於調試和表演可能非常不好,特別是在Mobiles上
- 這樣使用:
- Meteor.user() //返回整個當前用戶文檔
- Meteor.user(“ AuserIdString”) //返回整個指定的用戶文檔
- Meteor.user(['field1','field2',...]) //返回已過濾的當前用戶doc
- Meteor.user(“ AuserIdString”,['field1','field2',...]) //返回已過濾的指定用戶doc
API( /imports /api)
路由(/導入/API/路由)
- config.js-在此處設置路由Hierachy和Triggers。使用UpdateView代替Blazelayout.render來處理您的過渡動畫
- Triggers.js-在此處定義觸發器
- routes.js-在此處定義路線
集合(/imports/api/collections)
- 將您的全局收藏存儲在/imports/api/collections
- 將您的客戶僅存儲在./client中的minimongo實例
- 將您的私人收藏存儲在./server中
方法(/imports/api/方法)
- 將您的樂觀方法存儲在/imports/api/collections
- 僅存儲您的服務器方法
庫( /imports /library)
應用上下文(/imports/library/appContext)
- 使用會話或任何全球定義的變量不是一件好事。您應該寧願將AppContext用作反應型而不是會話
應用程序(/imports/library/apputilities.js)
- getemailfromuid (userId) - 使用此功能從用戶那裡獲取第一封郵件
- 安全(收集) - 使用它自動拒絕生產中用戶的所有寫作權限
- endloadingscreen-非常適合刪除您可以通過Arunoda的初始注射包注入的加載屏幕
- PlayAnimation (AnimationName,ElementID,Animation Time = 1000) - 通過將其添加為“ Animation Time” MS之後自動刪除元素並在元素上播放動畫
大火助手(/imports/library/blazehelpers.js)
- USERCONTED-使用此車把助手檢查是否存在用戶ID
- LINE BREAKTEXT-字符串的自動變形 n作為DOM中的BR元素。與三括號一起使用
- urlify (str) - 使字符串有效為URL。例如,非常適合在URL中傳遞帖子標題
- MobileViewSize-檢查窗口寬度是否小於601(基於postitalizecss標準媒體查詢)
- GetUsername (UID) - 根據他的UID獲取用戶名
- 等於(a,b) - 返回true是兩個參數是平等的
- nequals (a,b) - 返回true是兩個參數不是平等的
- logcontext (context = this) - 記錄傳遞的上下文或
- getemailfromuid (userId) - 使用此功能從用戶那裡獲取第一封郵件
- ISCORDOVA-如果在Cordova設備上,返回true
上下文實用程序(/imports/library/contextutilities.js)
- 如果將標誌設置為true,則一堆返回流星標誌並採取選項回調執行的功能
- Isclient,Isserver,Iscordova,Isdevelopment,Isproduction
DOM操縱
- createMelement ({tag,classList,id,dataset,inninhtml}) - 使用此傳遞作為參數一個對象,其中包含要分配給創建元素的屬性(請閱讀函數簽名以獲取函數簽名以獲取詳細信息))
功能編程(/imports/library/funcprog.js)
- 用於功能編程的一堆ES6功能和別名
- 為了保持乾燥,易於閱讀且易於調試代碼,真的很有用
實用程序(/imports/library/utilities.js)
- MobileViewSize-檢查窗口寬度是否小於601(基於postitalizecss標準媒體查詢)
- urlify (str) - 使字符串有效為URL。例如,非常適合在URL中傳遞帖子標題
- tryReach (對象,'NestEdatTribute1','NestEdatTribute2',...) - 如果在非對象值上調用屬性,則可以在嵌套對像中導航而無需丟棄錯誤的非常有用的功能
- buildregexp (str) - 簡單的REGEXP構建器
- 基準(回調) - 檢查回調性能的基本功能
- UnBlock (DDP連接) - DDP的this.unblock的別名,該方法在該方法不存在時不會丟失錯誤
- Isvalidimageurl (url) - 檢查URL是否指向圖像
模塊( /導入 /模塊)
反應性窗口
- 窗口大小- 使調整大小的反應性使窗口反應性
- 默認向客戶導入
DDP記錄
- 使用ddploggog的全局對像在客戶端上關閉和關閉DDP消息的聆聽
- 默認向客戶導入
智能斷開連接(/imports/modules/smartdisconnect.js)
- 在流星中維持活著的會議非常昂貴。使用smartdisconnect.start()將Meteor.status()。當用戶不活動一定時間(默認為300s)時,狀態為“離線”
- SmartDisconnect.start()採用兩個可選參數:
- 首先,這樣的對象:{timebeforedisconnect = 300,activateOncordova = true}
- 其次,在脫連接之前叫回調
- 借助MixMaxHQ的學分
啟動( /導入 /啟動)
客戶端(/imports/startup/client.js)
- 在文檔變量中添加一個刪除(按ID)方法
- 將日誌功能添加到全局範圍。在調試時,可用於登錄和返回變量而無需向文件添加新行
- 啟動回調具有許多要處理Cordova上註入的加載屏幕的功能,在加載角色後將路由器INIT推遲,並遵循AppContext中的連接狀態
用戶界面( /imports /ui)
組件(/imports/ui/組件)
佈局(/imports/ui/佈局)
模態(/imports/ui/模式)
頁面(/imports/ui/頁面)
樣式表(/imports/ui/樣式表)
- 在此處添加您的CSS / SCSS / SASS /更少的文件