helperOptions

  • typedef
can.stache.helperOptions

{Object}

 

The options argument passed to a helper function.

Object

Properties

  1. fn {sectionRenderer(context, helpers)}Optional

    Renders the "truthy" subsection BLOCK. options.fn is only available if the helper is called as a section or inverse section like: {{#helper}} or `{{^helper}}. The subsection BLOCK's

    Available if the helper is called as a section or inverse section. section helper is called. Call fn to render the BLOCK with the specified context.

  2. inverse {sectionRenderer(context, helpers)}Optional

    Provided if a section helper is called with {{else}}. Call inverse to render the INVERSE with the specified context.

  3. hash {Object<String,* | String | Number>}

    An object containing all of the final arguments listed as name=value pairs for the helper.

    {{helper arg1 arg2 name=value other=3 position="top"}}
    
    options.hash = {
        name: <context_lookup>.value,
        other: 3,
        position: "top"
    }
    
  4. context {*}

    The current context the stache helper is called within.

    var temp = can.stache(
      "{{#person.name}}{{helper}}{{/person.name}}");
    
    var data = {person: {name: {first: "Justin"}}};
    
    can.stache.registerHelper("helper", function(options){
    
      options.context === data.person //-> true
      
    })
    
    
    temp(data);
    
  5. scope {can.view.Scope}

    An object that represents the current context and all parent contexts. It can be used to look up key values in the current scope.

    var temp = can.stache(
      "{{#person.name}}{{helper}}{{/person.name}}");
    
    var data = {person: {name: {first: "Justin"}}};
    
    can.stache.registerHelper("helper", function(options){
    
      options.scope.attr("first")   //-> "Justin"
      options.scope.attr("person")  //-> data.person
      
    })
    
    
    temp(data);
    
  6. options {can.view.Options}

    An object that represents the local stache helpers. It can be used to look up key values

    var temp = can.stache("{{#person.name}}{{helper}}{{/person.name}}");
    
    var data = {person: {name: "Justin"}};
    
    can.stache.registerHelper("helper", function(options){
    
      options.options.attr("helpers.specialHelper") //-> function
      
    })
    
    
    temp(data, {
      specialHelper: function(){ ... }
    });