Javascript 如何使模板中的属性在JS变量更改时自动更新?

Javascript 如何使模板中的属性在JS变量更改时自动更新?,javascript,ember.js,ember-data,javascript-framework,Javascript,Ember.js,Ember Data,Javascript Framework,我有一个带有{price}}属性的模板,我想用JS变量“total_price”的当前值自动更新它。我试图遵循这里概述的基本概念: 这是我的密码: 模板: <script type="text/x-handlebars" data-template-name='question'> <div id="current-price"> {{price}} </div> </script> 为什么{{price

我有一个带有{price}}属性的模板,我想用JS变量“total_price”的当前值自动更新它。我试图遵循这里概述的基本概念:

这是我的密码:

模板:

<script type="text/x-handlebars" data-template-name='question'>
     <div id="current-price">
         {{price}}
     </div>
 </script>

为什么
{{price}}
不使用“总价”的当前值进行更新?

您需要将
price
声明为计算属性,该属性取决于
total\u price
并在
total\u price
更改时重新执行。不确定您的
总价
变量在哪里,但假设它是在同一个控制器上定义的,那么您可以这样做:

App.QuestionController = Ember.ObjectController.extend({
  total_price: null,
  price: function() {
    return this.get('total_price');
  }.property('total_price')
});
希望能有帮助

App.QuestionController = Ember.ObjectController.extend({
  total_price: null,
  price: function() {
    return this.get('total_price');
  }.property('total_price')
});