1

私は次のlayout.jadeコードを持っています

!!!
html
    head
        title= title
        link(rel='stylesheet', href='/vendor/bootstrap.min.css')
        link(rel='stylesheet', href='/css/style.css')
        script(type='text/javascript')
            (function() {
                var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
                ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
                var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
            })();
    body!= body

そして、ログインすると表示される次のページ:

div.navbar.navbar-fixed-top
    div.navbar-inner
        div.container-fluid
            ul#global-nav.nav.pull-left
                a(href='#').brand Control Panel
            button#btn-logout.btn.btn-primary
                i.icon-lock.icon-white
                | Sign Out

include account
include modals/alert
include modals/confirm

script(src='/js/views/home.js')
script(src='/js/controllers/homeController.js')

ページ上のdivhome.jadeは、コントロールパネルのタイトルを入力するためのヘッダーと、アカウントからサインアウトするためのオプションを作成しています。これらのdivを取得して、ログインしていなくてもホーム画面に表示したいと思います。layout.jadeページに移動するだけで、これを正常に実行できました。

私の問題は、それがControl Panelヘッダーの外側に表示されることです。それで、ページは私が思ったようにhome.jade私のページの本文のコードに単に追加するのではありません、それを行う方法についてのアイデアはありますか?layout.jade

すなわち

layout.jade
body
    div.header

home.jade
    p hello

この種のコードは、本文を含むホームページを作成するだけだと思いました

body
    div.header
        p hello

ヘッダー内。

理想的には、この擬似コードを配置し、ログイン時にのみサインアウトテキストを表示し、ログインしていないときにログイン機能を配置することを希望します。最終的には、メインのログインコンテナを中央に配置します。ボタンから飛び出します。

4

1 に答える 1

0

翡翠のブロックを調べる必要があります。これは、このテーマに関する優れたチュートリアルであり、徹底的で短いものであり、この問題に関するJadeGithubのreadmeです。

「インクルード」と「ブロック」の組み合わせを使用して、希望どおりに機能するファイルの混合物を作成します。インクルードが呼び出し元のファイルに関連しているファイル構造とディレクトリに注意するように注意してください。

于 2012-11-24T06:23:29.157 に答える