在角

2014-10-03 58 views
0

使用變量模型我有這個架構business_hours:在角

business_hours: { 
     sunday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     monday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     tuesday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     wednesday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     thursday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     friday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     saturday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]} 
    }, 

我創建了上述模式的UI。所以我使用ng-repeat來達到這個目的。我有一個數組星期在我的控制器定義:

$scope.week = ['Sunday','Monday' ,'Tuesday' ,'Wednesday' ,'Thursday' ,'Friday', 'Saturday']; 

和HTML代碼如下:

<div class="row-fluid span12"> 
      <small>Timings</small> 
     </div> 
     <div ng-repeat="w in week"> 

     <div class="row-fluid pushTop10px"> 
      <div class="row-fluid span4"> 
       <small>{{w}}</small> 
      </div> 
      <div class="row-fluid span8 " > 
       <div class="row-fluid span2" style="text-align:center; margin-top:4px;"> 
        <small>Open</small> 
       </div> 
       <div class="row-fluid span2">    
        <select class="span12" ng-model="outlet.business_hours.timings.w.open.hour"> 
        <option value="1"><label>00</label></option> 
        <option value="2"><label>01</label></option> 

此代碼的推移。基本上有四件事情:開放時間,開放分鐘,關閉時間,關閉分鐘。當我在印刷它時,週中的w正在工作。但是當我在模型中使用它時,它不起作用。 我也試過下面的代碼:

outlet.business_hours.timings.{{w}}.open.hour 
outlet.business_hours.timings.week[w].open.hour 
outlet.business_hours.timings.week($index).open.hour 

怎麼辦?

+0

看看這個http://stackoverflow.com/questions/4255472/javascript-object-access-variable-property-by-name-as-string,不要忘記,JavaScript區分大小寫。 – ysf 2014-10-03 08:54:49

回答

1

你能嘗試

outlet.business_hours[w].timings[0].open(hour) 

凡小時的範圍是一個屬性

Additionaly,星期日=週日)

你能提供!更多的代碼?

0

方法如下:

outlet.business_hours[w].timings[0].open.hour 
+0

不工作。錯誤是「無法讀取屬性'未定義的」打開' – rishiag 2014-10-03 08:55:19

+0

您確定'open'是否已定義? {{outlet.business_hours ['sunday']}}輸出的是什麼? – timsmiths 2014-10-03 09:06:50

+0

您是否對@ysf提出了更改建議? – timsmiths 2014-10-03 09:12:06