パーソナライズされたスタイル設定を流星アプリ内で保持できるようにしようとしています。引数のために、オブジェクトの配列に値を保持しているとしましょう。各オブジェクトには「name」属性と「value」属性が含まれています。これらのオブジェクトを <style> ブロック内でレンダリングしようとすると、Meteor は代わりに
以下は、私の最も単純な概念実証です。
poc.html:
<head>
<title>poc</title>
</head>
<body>
{{> hello}}
</body>
<template name="hello">
<h1>Hello World!</h1>
Styles don't render here:
<style>
body {background-color: #999;}
{{#each styles}}
.{{name}} { {{value}} }
{{/each}}
</style>
Styles render here:
<ul>
{{#each styles}}
<li class="{{name}}">{{name}} : {{value}}</li>
{{/each}}
</ul>
And here:
<div>
{{#each styles}}
.{{name}} { {{value}} } <br/>
{{/each}}
</div>
poc.js:
if (Meteor.isClient) {
Template.hello.styles= function() {
var resultArray=[];
resultArray.push( { name: 'style1', value:'color: #000'})
resultArray.push( { name: 'style2', value:'color: #fff'})
return resultArray;
}
}
スタイル ブロックの出力には次が含まれます。
<!--data:DuvxkGSiN6BK3M95T--><!--data:GvvkPYg2Adii4NNre-->
期待される代わりに:
style1: { color: #000}
style2: { color: #fff}
これが設計によるものなのか、バグなのか、私の理解によるエラーなのかはわかりません。前もって感謝します。