2016-10-07 2 views
-2

Ich habe dieses Array, das jedes Mal, wenn es geladen wird, ein zufälliges Gedicht auf dem Bildschirm anzeigen soll. Ich habe das Array gemacht, aber aus irgendeinem Grund wird es nicht auf meinem Bildschirm angezeigt.Array in JavaScript anzeigen

<link rel="import" href="../bower_components/polymer/polymer.html" /> 
<dom-module id="poem-element"> 
    <template> 
    <div></div> 
    <div id="poems"></div> 
    </template> 
    <script> 
    Polymer({ 
     is: "poem-element", 
     ready: function() { 
     var newArray = ["poem1", "poem2", "poem3"]; 
     var random = (Math.ceil(Math.random() * 4) - 1); 
     this.querySelector("#poems").innerHTML= poems[randomPoem]; 
     } 
    }) 
    </script> 
</dom-module> 
+0

danke, ja ich weiß nicht, was ich dachte. – jjdouble000

+0

Ihre Zufallszahl hat einen eingeschlossenen Bereich von -1 bis 3. Es sollte "0" bis "2" sein. Ändern Sie das in: 'var random = Math.floor (Math.random() * newArray.length)' –

+0

... und konsultieren Sie immer zuerst Ihre Entwicklerkonsole. –

Antwort

1

Ihr Array wird newArray genannt, nicht poems und Ihre zufällige wird random genannt, nicht randomPoem. Versuchen Sie stattdessen:

<link rel="import" href="../bower_components/polymer/polymer.html"/> 

<dom-module id="poem-element"> 

    <template> 

     <div> 
    </div> 

     <div id="poems"> </div> 

    </template> 

    <script> 
     Polymer({ 
      is: "poem-element", 
      ready: function() { 

    var poems =["poem1", "poem2", "poem3"]; 
       var randomPoem = Math.floor(Math.random() * newArray.length); 
       this.querySelector("#poems").innerHTML= poems[randomPoem]; 
     } 

     }) 


    </script> 

</dom-module> 

EDIT: Fest die random Zahl zwischen 0 und 2, wie pro Schielen Vorschlag in den Kommentaren oben.