0

モジュールが使用されるたびに、いくつかのテンプレート パーシャルをロードする必要があるいくつかのモジュールがあります。これらのファイルは、各モジュール サブフォルダー内の partials というフォルダーに保存しています。私のアプリの出発点はmeanjsで、部分ファイルを public/modules//partials/*.html に保存しています。

私はいくつかの ng-include とディレクティブの例を見てきましたが、私が読んだ各サンプルは AngularJS に慣れていないため、これを行うためのベスト プラクティスと最も適切な AngularJS の方法についてさらに混乱しています。

4

2 に答える 2

4

パーシャルはいつでも保存できます。それらをすべてロードするには、 angular template cacheを使用します。

Grunt または gulp を使用して自動的に生成します。個人的にはgulpを使っています。

これが私のプロジェクトの1つの実例です。

nodejsとnpmをインストール

npm intall gulp -g

npm install gulp-angular-templatecache

作成gulpfile.js

var templateCache = require('gulp-angular-templatecache'),
    watch = require('gulp-watch');

gulp.task('generate', function () {
    gulp.src('public/*/partials/*.html')
        .pipe(templateCache('templates.js', {module: 'YOURMODULENAME', standalone: false}))
        .pipe(gulp.dest('public/js'));
});
 gulp.task('watch-partials', function () {
    gulp.watch('public/*/partials/*.html', ['generate']);
});

次に、次のように使用します。

gulp generate- パーシャルを再生成する

gulp watch-partials- ファイルの変更を監視します。パーシャルが変更された場合は、自動的にgenerateタスクが実行されます。:)

もう1つ、htmlファイルにtemplate.jsを含めることを忘れないでください

<script src="public/js/template.js"></script>

パーシャルを変更するたびに、テンプレート キャッシュを再生成することを忘れないでください。

于 2014-11-19T10:15:23.853 に答える
1

を活用する必要があり$templateCacheます。パーシャル フォルダーで、次のようにテンプレートを定義します。

angular.module('yourTemplateModule', []).run('$templateCache', function ($templateCache) {
   $templateCache.put('yourTemplate', '<div>...some HTML here...</div>');
}

次に、すべてのテンプレート モジュールを依存関係として持つ、たとえば「app.tpls」という名前のモジュールを作成します。おそらくmeanjsにあるメイン アプリ モジュールへの依存関係としてそれを挿入し、アプリケーションで必要なときにいつでもテンプレートを準備できます。それらを取得するには、次のように呼び出します。

$templateCache.get('yourTemplate');
于 2014-11-19T10:30:29.713 に答える