Javascript 阵列未显示在模板中,Meteor
我以以下数组为例:Javascript 阵列未显示在模板中,Meteor,javascript,arrays,node.js,templates,meteor,Javascript,Arrays,Node.js,Templates,Meteor,我以以下数组为例: var myarray = [ device1: [ name:device1 , variables: [ variable1: [ name: variable1, unit: "a unit",
var myarray = [
device1: [ name:device1 ,
variables: [ variable1: [ name: variable1,
unit: "a unit",
value: "a value"
],
variable2: [ name: variable2,
unit: "a unit",
value: "a value"
]
]
],
device2: [ name:device2 ,
variables: [ variable1: [
name: variable1,
unit: "a unit",
value: "a value"
]
]
]
]
我试图在模板上显示它:
<body>
<div class="container">
<header>
<h1>MQTT Device Status List</h1>
</header>
<ul>
{{#each mqttmessages2}}
{{> mqttmessage2}}
{{/each}}
</ul>
</div>
</body>
<template name="mqttmessage2">
<li>{{name}} :
<ul>
{{#each variables}}
<li>{{name}} : {{value}} [ {{unit}} ] </li>
{{/each}}
</ul>
</li>
</template>
问题是,模板没有显示任何内容,我一直在寻找问题,但似乎无法解决它,控制台没有显示错误,因此我在这里迷失了方向。首先,您的数组语法无效。我猜deviceN、variables和variableN应该是对象,而不是更多的数组? 像这样: 有了上面的代码,剩下的代码应该可以很好地呈现 我很惊讶您没有收到任何错误,如果我将您的数据复制粘贴到devtools中,它会立即中断
Template.body.helpers({
mqttmessages2() {
console.log(myarray);
return myarray;
}
});
var myarray = [
{
name: device1,
variables: [
{
name: variable1,
unit: "a unit",
value: "a value"
},
{
name: variable2,
unit: "a unit",
value: "a value"
}
]
},
{
name: device2,
variables: [
{
name: variable1,
unit: "a unit",
value: "a value"
}
]
}
];