Если и еще, если заявления в угловых - PullRequest
0 голосов
/ 20 мая 2019

Я хотел бы написать код в Angularjs, который получает строку из ввода (текстовое поле) и помечает ввод другим цветом в соответствии с оператором if и else if.Я написал код, который копирует текст из ввода в h1 и помечает его красным цветом.Если я напишу имя «Алекс», оно будет помечено желтым цветом. Любая другая строка будет помечена красным фоном.

<!DOCTYPE html>
<html>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
  <body ng-app="">
    <label>Enter your name:</label>
    <input type = "text" data-ng-model = "name" placeholder = "Insert your name:" />
    <h1 data-ng-if="name" >Hello    
      <span data-ng-style ="{'background-color': name == 'Alex' ? 'yellow' :'red'}"> {{name}}</span> </h1>
    <div data-ng-bind = "name"> </div>
    <button data-ng-click ="name = 'Alex'"> Fill your name</button>
  </body>
</html>

Например, если я напишу Алекса, он пометит егона зеленом цвете фона, если я напишу имя Дэвида, он будет отмечен зеленым фоном и т. д.

Хаим

1 Ответ

0 голосов
/ 20 мая 2019

Почему бы вам просто не добавить функцию, которая вычисляет цвет фона в вашем контроллере?

<span data-ng-style ="{'background-color': calculateBackgroundColor(name)}"> {{name}}</span> </h1>

в ваш контроллер:

function calculateBackgroundColor(name) {
    switch(name) {
        case 'Alex':
            return 'red';
        default:
            return 'blue';
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...