Ember-实时预览图像

时间:2014-01-11 12:42:53

标签: ember.js live-preview

我正在做一个带有实时预览的产品表单,只是为了好玩

HBS

<div class="col-md-6 col-xs-12">
        <label>Product name: </label>
        {{input type="text" placeholder="First name" value=newProductname class="form-control"}}
    </div>
    <div class="col-md-3 col-xs-12">
        <label>Price: </label>
        {{input type="text" placeholder="$$" value=price class="form-control"}}
    </div>
    <div class="col-md-3 col-xs-12">
        <label>Image location: </label>
        {{input type="text" placeholder="Url" value=Url class="form-control"}}
    </div>

这个实时预览只需使用{{}}

中的值即可
<h1>{{newProductname}}</h1>
<p>{{price}}$</p>
<p>{{description}}<p>
<img {{bind-attr src="need Url value here"}}></img>

那么你将如何进行这种嵌套绑定或者只是推荐另一种解决方案呢?

欢呼声

克里斯蒂安

1 个答案:

答案 0 :(得分:1)

出于某种原因,Ember不喜欢大写属性,我会调查一下。现在使用小写属性名称。

<div class="col-md-3 col-xs-12">
    <label>Image location: </label>
    {{input type="text" placeholder="Url" value=url class="form-control"}}
</div>

<img {{bind-attr src=url}}>

http://emberjs.jsbin.com/idUWEGU/2/edit

更新

看起来与全局命名空间相关,显然是一个大写属性推断全局命名空间Bypass/disable uppercase -> global inference in Handlebars templates?

http://emberjs.jsbin.com/idUWEGU/1/edit

其他更新:

您可以通过更多地限定绑定来定义范围。

 <div class="col-md-3 col-xs-12">
    <label>Image location: </label>
    {{input type="text" placeholder="Url" value=controller.Url class="form-control"}}
</div>
<img {{bind-attr src=controller.Url}}>

http://emberjs.jsbin.com/idUWEGU/3/edit