3

一種の ng-placeholder などがありますか?

Risk計算入力である入力用のデフォルトのプレースホルダーを配置したいのですが、計算が2秒続く場合があるため、そのRiskプレースホルダーを削除して、そこにローダー/スピナーを配置します。これが私が持っている方法です

    <div>

      <div>
        <span ng-show="betLoader"><div class="spinner"></div></span>
        <div ng-show="!betLoader">Win</div>
      </div>

      <input placeholder="Risk"
             ng-model="parlayData.win">
    </div>

ローダー/スピナーが表示される場合、falseの場合、Winという単語が表示される$scope変数があります。同じことをしたいのですが、そこにはありません。プレースホルダーRiskを使用して入力で実行したいのですが、が true の場合は、 Riskという単語を非表示にします。betLoadertruedivbetLoader

あなたの提案は何ですか?

編集

divスピナーがクラスにあることを考慮してspinnerください。そのため、そのスピナーを入力内に配置する必要があります。

4

2 に答える 2

2

組み込みng-placeholderディレクティブはありません。regular を使用placeholderする{{scopeParam}}か、単に実装することができますng-directive

を実装する利点ng-placeholderは、ページの読み込みに時間がかかる場合{{scopeParam}}、入力のプレースホルダーとしてプレーンが表示されないことです。

実装は非常に簡単です:

angular.module('ph', [])
//directive starts here
  .directive('ngPlaceholder', function() {
    return {
      restrict: 'A',
      link: function(scope, element, attrs) {
        element.attr("placeholder",attrs.ngPlaceholder);
      }
    };
  })
//directive ends here

  .controller("phCtrl", function($scope){
    $scope.ph="The placeholder"
  });
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<div ng-app="ph" ng-controller="phCtrl">
  <input type="text" ng-placeholder="{{ph}}" />
</div>

于 2015-06-19T17:11:02.093 に答える