0

サーバーとクライアントの両方でhtmlをレンダリングするためにractivejsを使用しています。次のような変数名に基づいて、ページ テンプレートをレンダリングできる ractivejs インスタンスとして 1 つのインデックス ページが必要です。

this.ractive = new Ractive({
  template: _GLOBAL.templates.index,
  partials: _GLOBAL.templates,
  data: {
    context: context,
    getPage: function () {
      /** Should return rendered partial, or something that will end up as {{> myPartialName}} in index */
      return '> home';
    }
  }
})

これは現在、ractivejs で可能ですか?

4

3 に答える 3

0

そのサーバーサイドのように動作するだけでよいので、これもうまくいくようです:

res(peer.getSnapshot(_GLOBAL.templates.home, context))

getSnapshot: function(template, context) {
    var Ractive = require('ractive')
    /** Inject a page template in the main template */
    var pageRactive = new Ractive({template: template, data: context})
    this.ractive = new Ractive({
      template: _GLOBAL.templates.index,
      partials: _GLOBAL.templates,
      data: {
        context: context,
        getPage: function () {
          return pageRactive.toHTML()
        }
      }
    })
    return this.ractive.toHTML({})
  }
}


<body>
  {{{getPage()}}}
</body>
于 2014-03-06T22:50:34.370 に答える