流星ボイラープレート
Blaze + Flowrouter用のMeteorすぐに使用できるアプリが多数の便利な機能を備えており、ES6のWriten
githubリポジトリ:https://github.com/fen747/meteor-boilerplate
David Panart別名。 FEN747
バージョン1.1.3
バージョンの変更を参照してください
このリポジトリを自由にフォークしてください。
クールだと思うなら、それを主演することを忘れないでください!
このボイラープレートを使用した公開プロジェクト:
インストール
- このレポンをクローンする: git clone https://github.com/fen747/meteor-boilerplate
- ディレクトリの変更: CD Meteor-BoilerPlate
- NPM依存関係をインストール: Meteor NPMインストール
- 楽しむ !
- 詳細については、histor.mdを参照してください
- Meteorフォーラムのトピック
doc
パッケージ(/.meteor/packages)
- 非常に便利なパッケージの束は、アプリにインストールするために事前にインストールされるか、単に挿入されている必要があります
Globalsの変更(/both /_globals.js)
ロダッシュ
- このアプリにはすでにerasaur:lodashパッケージがインストールされ、アンダースコアの代わりに「_」にエイリアスされています
- Lodashは、Undescorejsと同じAPIを持っていることが知られていますが、パフォーマンスが向上し、より多くの機能があります
meteor.user()
- meteor.user()関数を最適化しました
- 特定のユーザーにfindONEをエイリアスするためにパラメーターとして文字列で使用できるようになりました
- さらに、役に立たない再レンダー / Autorunの無効化の数を減らすために、必要なフィールドを自動的にフィルタリングするために文字列の配列を渡すことができます
- 実際、デフォルトのmeteor.user()関数ユーザードキュメント全体を返します。つまり、ドキュメントの変更がある場合は、特にモバイルでデバッグやパフォーマンスに非常に悪い場合がある場合、反応的な計算が無効になります。
- このように使用してください:
- meteor.user() //現在のユーザー全体を返します
- meteor.user( "auseridstring") //指定されたユーザードキュメント全体を返します
- meteor.user(['field1'、 'field2'、...]) //フィルタリングされた現在のユーザードキュメントを返します
- meteor.user( "auseridstring"、['field1'、 'field2'、...]) //フィルタリングされた指定されたユーザードキュメントを返します
API( /Imports /API)
ルート(/インポート/API/ルート)
- config.js -Routes Hierachyを設定し、ここでトリガーします。 blazelayout.renderの代わりにupdateviewを使用して、トランジションアニメーションを処理する
- Triggers.js-ここでトリガーを定義します
- routes.js-ここでルートを定義します
コレクション(/インポート/API/コレクション)
- グローバルコレクションを/Imports/API/コレクションに保存します
- クライアントのみを保存してください
- プライベートコレクションを./Serverに保管してください
方法(/インポート/API/メソッド)
- 楽観的な方法を/Imports/API/コレクションに保存します
- ./Serverにサーバーのみのメソッドを保存します
ライブラリ( /インポート /ライブラリ)
アプリコンテキスト(/インポート/ライブラリ/AppContext)
- セッションまたはグローバルに定義された変数を使用することは良いことではありません。 AppContextをセッションの代わりにReactivedictとして使用する必要があります
アプリユーティリティ(/imports/library/apputilities.js)
- getemailfromuid (userid) - これを使用して、ユーザーから最初のメールを取得します
- secure (collection) - これを使用して、生産中のユーザーのすべての書き込み許可を自動的に拒否します
- endloadingscreen-ロード画面を削除するのに最適なArunodaの最初の注入パッケージを介して注入できた可能性があります
- Playanimation (AnimationName、ElementID、AnimationTime = 1000) - クラスを追加して、「AnimationTime」MSの後に自動的に削除することにより、要素でアニメーションを再生します
Blaze Helpers(/imports/library/blazehelpers.js)
- userconnected-このハンドルバーヘルパーを使用して、useridが存在するかどうかを確認します
- LineBreakText- domのBR要素として文字列の自動的にtranform n。トリプルブレースで使用します
- urlify (str) - urlとして文字列を有効にします。たとえば、URLの投稿タイトルを渡すのに最適
- MobileViewSize-ウィンドウの幅が601未満であるかどうかを確認します(Materializecss標準メディアクエリに基づく)
- getSusername (UID) - UIDに基づいてユーザーの名前を取得します
- 等しい(a、b) - return trueは両方の議論が等しい
- nequals (a、b) - return trueは両方の議論が等しいものではない
- logcontext (context = this) - 渡されたコンテキストまたはこれをログにします
- getemailfromuid (userid) - これを使用して、ユーザーから最初のメールを取得します
- iscordova-コルドバデバイス上にある場合はtrueを返します
コンテキストユーティリティ(/imports/library/contextutivities.js)
- 流星フラグを返し、フラグがtrueに設定されている場合に実行するためにオプションのコールバックを実行する多数の関数
- isClient、Isserver、Iscordova、IsDevelopment、IsProduction
DOM操作
- createdomelement ({tag、classlist、id、dataset、innerhtml}) - この渡しをパラメーターとして使用して、作成した要素に割り当てる属性を含むオブジェクトを使用します(詳細については、関数の署名をお読みください)
機能プログラミング(/Imports/library/funcprog.js)
- 機能プログラミングのためのES6機能とエイリアスの束
- ドライで読みやすく、デバッグコードを簡単に保つために本当に便利です
ユーティリティ(/imports/library/utilities.js)
- MobileViewSize-ウィンドウの幅が601未満であるかどうかを確認します(Materializecss標準メディアクエリに基づく)
- urlify (str) - urlとして文字列を有効にします。たとえば、URLの投稿タイトルを渡すのに最適
- tryreach (object、 'Nestedattribute1'、 'Nestedattribute2'、...) - 属性が非オブジェクト値で呼び出された場合、エラーを投げることなくネストされたオブジェクトでナビゲートする非常に便利な機能
- BuildRegexp (str) - シンプルなRegexpビルダー
- ベンチマーク(コールバック) - コールバックのパフォーマンスを確認するための基本的な関数
- Unblock (DDP Connection) - メソッドが存在しないときにエラーをスローしないDDPのThis.Unblockのエイリアス
- Isvalidimageurl (url) - URLが画像を指しているかどうかを確認します
モジュール( /インポート /モジュール)
リアクティブウィンドウ
- window.size-ウィンドウのサイズをリアクティブにするためのリアクティブディクト
- デフォルトでクライアントにインポートされます
DDPロギング
- ddploggingグローバルオブジェクトを使用して、クライアントでのDDPメッセージのリスニングをオンとオフに切り替える
- デフォルトでクライアントにインポートされます
Smart切断(/Imports/modules/smartdisconnect.js)
- Meteorで生きているセッションを維持するのは非常に費用がかかります。 smartdisconnect.start()を使用してmeteor.status()を設定します。
- smartdisconnect.start()は、 2つのオプションのパラメーターを取得します。
- まず、次のようなオブジェクト:{timebeforedisconnect = 300、activateoncordova = true}
- 第二に、脱くことが発生する直前に呼び出されるコールバックが発生します
- MixMaxhqのクレジット
スタートアップ( /インポート /スタートアップ)
クライアント(/Imports/startup/client.js)
- ドキュメント変数にremofelement(IDによる)メソッドを追加する
- グローバルスコープにログ関数を追加します。デバッグ時にファイルに新しい行を追加せずに変数をログに記録して返すのに役立ちます
- スタートアップコールバックには、コルドバで注入されたロード画面を処理するための多くのいくつかの機能があり、ロードがロードされた後にルーターのinitを延期し、appcontextの接続状態に従うことができます
ユーザーインターフェイス( /Imports /ui)
コンポーネント(/インポート/UI/コンポーネント)
レイアウト(/インポート/UI/レイアウト)
モーダル(/Imports/UI/Modals)
ページ(/インポート/ui/ページ)
styleSheets(/imports/ui/styleSheets)
- CSS / SCSS / SASS / LESS FILESをここに追加する