2016-08-18 5 views
1

Я создаю гибридное приложение для iOS и Android, и есть раздел, где я хочу показать день. Если вы откроете приложение во вторник, он скажет вторник и так далее. Это на испанском языке, поэтому там, где говорится «Miércoles», это среда, но я написал ее вручную, я хочу, чтобы она изменилась, поэтому, если сегодня среда, она автоматически изменяется.Динамически менять текст на панели навигации

Я попытался изменить его, используя нг-привязку и следующий код:

var today = new Date(); 
    if(today.getDay() == 0){ 
    var hoy = "Domingo"; 
    } else if(today.getDay() == 1){ 
    var hoy = "Lunes"; 
    }else if(today.getDay() == 2){ 
    var hoy = "Martes"; 
    }else if(today.getDay() == 3){ 
    var hoy = "Miercoles"; 
    }else if(today.getDay() == 4){ 
    var hoy = "Jueves"; 
    }else if(today.getDay() == 5){ 
    var hoy = "Viernes"; 
    }else if(today.getDay() == 6){ 
    var hoy = "Sábado"; 
    } 
    $scrope.variable = hoy; 

Он не работал, никаких ошибок или предупреждений консоли.

Image showing my app

ответ

4

Вы объявляя те же переменные несколько раз, так что заявления после первого игнорируются.

Это будет выглядеть лучше использовать массив будний день, как так:

var now = new Date(); 
//var weekday = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; 
var weekday = ["Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes","Sábado"]; 

var hoy = weekday[now.getDay()]; 
$scope.variable = hoy; 
+0

Гораздо чище (а также исправили опечатку) , – Alisson

1

Похоже у вас есть опечатка.

Изменение от

$scrope.variable = hoy;

в

$scope.variable = hoy;

1

Просто обновить свой код,

var today = new Date(), 
    weekday = [ 
       "Domingo", 
       "Lunes", 
       "Martes", 
       "Miercoles", 
       "Jueves", 
       "Viernes", 
       "Sábado" 
       ]; 

var hoy = weekday[today.getDay()]; 
$scope.variable = hoy; 

Демо: https://jsfiddle.net/1a148yrw/2/

Смежные вопросы