私の MEAN スタック アプリでは、ページに読み込まれたコンテンツに応じてページ タイトル (翡翠で設定) を変更しようとしています。現時点では、SPA 内のすべてのページに一般的なページ タイトルが表示されます。
インデックスのページタイトルを設定するには、これを行っています
index.js
res.render('index', {
title: 'Generic Page Title'
});
次に、コンテンツ(別の角度ルート/ページ)を返すときに、このタイトルを更新したい
offers.js
Offer.find(searchObject).sort('-pricing.pctSavings').exec(function(err, offers){
if (err) {
res.render('error', {
status: 500
});
} else {
//update title?
res.jsonp(offers);
}
});
ヘッドジェイド
title= appName+' - '+title
ページ内でオファーが json として返されるため、これを変更する方法がわかりません。応答にタイトルを追加しようとしました (res.locals.title = 'Test unique title') が機能しません。
何か案は?
ありがとう!
詳細情報の追加:
次のように、jade テンプレートにいくつかの html を含めることができます。
ヘッドジェイド
head
div(data-ng-include="'views/dynamic_title.html'")
meta(charset='utf-8')
meta(http-equiv='X-UA-Compatible', content='IE=edge,chrome=1')
meta(name='viewport', content='width=device-width,initial-scale=1,user-scalable=no')
ビュー/dynamic_title.html
<div data-ng-controller="OffersController">
<title> Test </title> //works
<title> {{test}} </title> //test set in offers controller - doesn't work
<title> {{ Page.title() }}</title> //Page injected into offers controller - doesn't work
</div>
オファーコントローラーは後でロードされます...
ありがとう。