Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Marionette.js访问Eco模板中的实例方法_Javascript_Templates_Marionette_Backbone Views_Eco - Fatal编程技术网

Javascript 使用Marionette.js访问Eco模板中的实例方法

Javascript 使用Marionette.js访问Eco模板中的实例方法,javascript,templates,marionette,backbone-views,eco,Javascript,Templates,Marionette,Backbone Views,Eco,我有一个简单的控制器 @Blobber.module "PlacesApp.Show", (Show, App, Backbone, Marionette, $, _) -> Show.Controller = showPlace: (place) -> showView = @getShowView place App.mainRegion.show showView getShowView: (place) ->

我有一个简单的控制器

@Blobber.module "PlacesApp.Show", (Show, App, Backbone, Marionette, $, _) ->

  Show.Controller =

    showPlace: (place) ->
      showView = @getShowView place

      App.mainRegion.show showView

    getShowView: (place) ->
      new Show.Place
        model: place
和查看文件:

@Blobber.module "PlacesApp.Show", (Show, App, Backbone, Marionette, $, _) ->

  class Show.Place extends App.Views.ItemView
    template: "places/show/templates/_place"
我想访问
place
模型实例上名为
place.posts()
的方法,该方法通过Supermodel.js()返回模型
Post
的相关
集合。我正在使用Eco templates(),并且一直遵循在上的教程中的模式

有人知道我应该如何访问Eco模板中相关的
帖子吗?我希望能够访问实际方法
.posts()
,但我愿意在视图中创建
posts
变量并将其传递到模板中


谢谢,如果您需要更多信息,请询问。

我通常通过以下两种方式之一进行此操作:

  • 覆盖
    Show中的
    serializeData()
    。放置
    视图,在结果json中包含
    posts()
    数据,然后通过
    @posts
    访问模板中的posts数据

  • 覆盖视图中的
    templateHelpers()
    ,并通过
    @posts()
    访问模板中的posts数据


  • 查看更多信息。

    我通常采用以下两种方式之一:

  • 覆盖
    Show中的
    serializeData()
    。放置
    视图,在结果json中包含
    posts()
    数据,然后通过
    @posts
    访问模板中的posts数据

  • 覆盖视图中的
    templateHelpers()
    ,并通过
    @posts()
    访问模板中的posts数据


  • 查看更多信息。

    您可以使用来自木偶网的复合视图从模板中提取逻辑,它可以处理模型和集合:

    因此,您将有一个不带循环逻辑的CompositeView模板,在此视图中,您必须定义一个itemView和一个itemViewContainer,其中将包含绑定到集合中的模型的itemView事件。之后,您必须使用自己的模板为您的CompositeView创建项目视图

    我相信您会在文档中找到所需的所有信息,并提供更好的解释;)


    您可以使用来自木偶网的复合视图从模板中提取逻辑,它可以处理模型和集合:

    因此,您将有一个不带循环逻辑的CompositeView模板,在此视图中,您必须定义一个itemView和一个itemViewContainer,其中将包含绑定到集合中的模型的itemView事件。之后,您必须使用自己的模板为您的CompositeView创建项目视图

    我相信您会在文档中找到所需的所有信息,并提供更好的解释;)


    据我所知,在
    templateHelpers
    方法中,我似乎仍然只能访问模型属性。您能为这些解决方案之一演示一些示例代码吗?我根本不知道如何在
    serializeData
    方法中访问模型,我只知道如何在
    templateHelpers
    方法中访问模型属性。谢谢你的帮助!此外,我还愿意使用
    compositeView
    或任何其他类型的视图,这些视图对这类内容更适合。据我所知,在
    templateHelpers
    方法中,我似乎仍然只能访问模型属性。您能为这些解决方案之一演示一些示例代码吗?我根本不知道如何在
    serializeData
    方法中访问模型,我只知道如何在
    templateHelpers
    方法中访问模型属性。谢谢你的帮助!另外,我也愿意使用
    复合视图
    或任何其他类型的视图,这些视图对这类事情来说会更好。