2016-07-20 2 views
0

Ich habe diese answer zeigt, wie Sie Objekteigenschaften an Attribute im HTML-Tag für eine Polymer-Komponente gebunden zu zeigen.Wie Polymer Polymer-Eigenschaften beim Rendern von React-Komponenten übergeben werden (keine JSX)

Was ich tun möchte, ist, die gleichen Eigenschaften passieren, wenn sie von einem Reagieren Komponente wie so machen:

var myComponent = React.createClass({ 
    componentDidMount: function(){ 
    }, 
    render: function() { 
     var activities = this.props.activities.map(function(activity) { 
      return React.createElement("activity-tracker", {variable: {"title": activity.title, "description": activity.description}}); 
     }); 
     return React.createElement("div", null, activities); 
    } 
}; 

Ich versuche, ganz mit JSX zu vermeiden.

activity-tracker ist die Polymerkomponente

<dom-module id="activity-tracker"> 
    <template> 
     <p>{{variable.title}}</p> 
     <p>{{variable.description}}</p> 
    </template> 

    <script> 
     Polymer({ 
      is:"activity-tracker", 
      properties:{ 
       variable:{ 
        type:Object, 
        value: function(){return {};} 
       } 
      } 
     }); 
    </script> 
</dom-module> 

aktualisieren

ich einen this post gefunden haben, wo sie die Werte mit einer ref Funktion übergeben, aber I’m not sure, wenn dies der beste Weg, es zu tun ist.

... 
return React.createElement("activity-tracker", { 
    ref: function (ref) { 
      if (!ref) return; 
      ref.variable = {title: activity.title, description: activity.description}; 
     } 
    }); 
... 

Antwort

0

Ich glaube nicht, dass dies wegen des virtuellen DOM von React möglich ist.

+0

Danke, ich habe die Frage mit einer Lösung aktualisiert, die ich gefunden habe, um dasselbe in [react-polymer] zu tun (https://github.com/jscissr/react-polymer), obwohl ich mir nicht sicher bin, ob das ist ein unterstützter Anwendungsfall. – rraallvv

Verwandte Themen