JavaScriptで定義されたAngular.jsモデル。1つのプロパティを関数として評価する必要があります

ノア

JSでモデルを次のように定義しました。

$scope.requirement = {
  id: function() {
    if($scope.dada || $scope.lala) {
      return $scope.dada
    }

    return $scope.haha
  }
}

変数はナンセンスですが、定義されているふりをします(私の状況では、これは単なる例です)。

そして、Angularディレクティブを使用したHTMLには、次のような入力があります。

<input type="text" ng-model="requirement.id" placeholder="ID">

関数から返される値は、の値ではありませんrequirement.id上記のような関数を渡すことができますが、Angular.jsに関数を評価させ、戻り値を使用させるにはどうすればよいですか?

編集:

私はこれを試しましたが、うまくいきませんでした:

$scope.requirement = {
  id: null
}

if($scope.dada || $scope.lala) {
  $scope.requirement.id = $scope.haha;
}

実行するconsole.log(requirement)と値が変更されますが、ビューの新しい値を表していません。ビューの入力はまだ表示されますnull

ダニエル・ヒメネス

双方向バインディングを実行している場合idは、1つの引数を持つゲッター/セッター関数として定義する必要があります。したがって、値が渡されると、その値はセッターとして機能し、モデルを更新します。それ以外の場合は、ロジックに基づいて現在の値を取得します。

$scope.requirement = {
  id: function(newId) {
    if (arguments.length) {
       $scope.dada = newId;
    }
    return ($scope.dada || $scope.lala) ? $scope.dada : $scope.haha;
  }
}

input要素を更新し、ng-model-options属性を追加する必要があります。

<input type="text" ng-model="requirement.id" ng-model-options="{ getterSetter: true }" />

一方向バインディングについて話しているだけの場合は、getter / setterまたはng-modelを使用する必要はありません。

<input type="text" value="{{requirement.id()}}" readonly />

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

WPF MVVMでは、モデルからバインドされるすべてのプロパティを依存関係プロパティとしてラップする必要がありますか?

分類Dev

基になるモデルデータが変更されたときに、ViewModelで定義されたプロパティの変更を通知します

分類Dev

ユーザープロファイルデータをフィールドとして追加する必要がありますか、それともSymfonyの1対1エンティティとして追加する必要がありますか?

分類Dev

メモ化された関数は変数として定義する必要がありますか?

分類Dev

Androidのクラスの計算フィールドのプロパティまたは関数を定義する必要がありますか?

分類Dev

プロパティの1つがパイプラインで一意である必要がある複数のプロパティを選択します

分類Dev

Angularディレクティブの分離されたスコープ内で関数を定義する

分類Dev

テラデータで選択された非集計値のパーティションに対する分析関数を使用した集計関数は、関連付けられたグループの一部である必要があります

分類Dev

プロパティとして設定された場合のAngular評価式

分類Dev

Javaは、1つの場所でのみ使用される場合、定数として定義された文字列である必要があります

分類Dev

Backbone.js-「url」プロパティまたは関数を指定する必要があります

分類Dev

Javascript: 関数に渡される引数を「let」、「const」、または「var」として定義する必要がありますか?

分類Dev

Ember.js:ネストされた関係をモデルプロパティとして計算します

分類Dev

同じDOM要素で定義されているディレクティブの「priority」プロパティをangularが定義するのはなぜですか?

分類Dev

エラーが発生するディレクティブのAngularJSテンプレート関数 'ディレクティブのテンプレートにはルート要素が1つだけ含まれている必要があります'

分類Dev

変数自体ではなく、ifステートメントの新しい変数として値を評価する必要があります

分類Dev

ForeginKeyを使用したDjango2つのモデルですが、1つは定義されていません

分類Dev

「dynamodb」テーブルを無効にすると、「無効な1つ以上のパラメーター値が無効でした:AttributeDefinitionsで定義されていないインデックスキー属性があります」

分類Dev

関数の評価では、すべてのスレッドを実行する必要があります-MVC

分類Dev

cssファイルで定義されたjqueryの要素にデフォルトのcssプロパティを適用する方法はありますか?

分類Dev

cssファイルで定義されたjqueryの要素にデフォルトのcssプロパティを適用する方法はありますか?

分類Dev

とにかく設定しようとしているフィールドを評価するためにWHEREを使用する必要がありますか?

分類Dev

PyV8を使用してデフォルトのパラメーターでJavaScript関数を評価する方法はありますか?

分類Dev

テーブルがMyISAMまたはInnoDBとして定義されている場合、SQLクエリはCOUNT(*)を異なる方法で評価します

分類Dev

ネストされたコンポーネントのすべてのレベルで繰り返し必要なプロパティをpropTypingすることに価値はありますか?

分類Dev

Javascript:「let」で定義された変数を定義解除(または再定義)する方法

分類Dev

1つのファイルで定義された複数のViewControllerでプロパティを使用するにはどうすればよいですか?

分類Dev

複数のvueディレクティブを使用してnpmパッケージを作成するにはどうすればよいですか?または、ディレクティブごとに1つのパッケージを作成する必要がありますか?

分類Dev

関数が定義されているモジュールまたはPythonで呼び出されるモジュールを除いて、try-exceptを定義する必要がありますか?

Related 関連記事

  1. 1

    WPF MVVMでは、モデルからバインドされるすべてのプロパティを依存関係プロパティとしてラップする必要がありますか?

  2. 2

    基になるモデルデータが変更されたときに、ViewModelで定義されたプロパティの変更を通知します

  3. 3

    ユーザープロファイルデータをフィールドとして追加する必要がありますか、それともSymfonyの1対1エンティティとして追加する必要がありますか?

  4. 4

    メモ化された関数は変数として定義する必要がありますか?

  5. 5

    Androidのクラスの計算フィールドのプロパティまたは関数を定義する必要がありますか?

  6. 6

    プロパティの1つがパイプラインで一意である必要がある複数のプロパティを選択します

  7. 7

    Angularディレクティブの分離されたスコープ内で関数を定義する

  8. 8

    テラデータで選択された非集計値のパーティションに対する分析関数を使用した集計関数は、関連付けられたグループの一部である必要があります

  9. 9

    プロパティとして設定された場合のAngular評価式

  10. 10

    Javaは、1つの場所でのみ使用される場合、定数として定義された文字列である必要があります

  11. 11

    Backbone.js-「url」プロパティまたは関数を指定する必要があります

  12. 12

    Javascript: 関数に渡される引数を「let」、「const」、または「var」として定義する必要がありますか?

  13. 13

    Ember.js:ネストされた関係をモデルプロパティとして計算します

  14. 14

    同じDOM要素で定義されているディレクティブの「priority」プロパティをangularが定義するのはなぜですか?

  15. 15

    エラーが発生するディレクティブのAngularJSテンプレート関数 'ディレクティブのテンプレートにはルート要素が1つだけ含まれている必要があります'

  16. 16

    変数自体ではなく、ifステートメントの新しい変数として値を評価する必要があります

  17. 17

    ForeginKeyを使用したDjango2つのモデルですが、1つは定義されていません

  18. 18

    「dynamodb」テーブルを無効にすると、「無効な1つ以上のパラメーター値が無効でした:AttributeDefinitionsで定義されていないインデックスキー属性があります」

  19. 19

    関数の評価では、すべてのスレッドを実行する必要があります-MVC

  20. 20

    cssファイルで定義されたjqueryの要素にデフォルトのcssプロパティを適用する方法はありますか?

  21. 21

    cssファイルで定義されたjqueryの要素にデフォルトのcssプロパティを適用する方法はありますか?

  22. 22

    とにかく設定しようとしているフィールドを評価するためにWHEREを使用する必要がありますか?

  23. 23

    PyV8を使用してデフォルトのパラメーターでJavaScript関数を評価する方法はありますか?

  24. 24

    テーブルがMyISAMまたはInnoDBとして定義されている場合、SQLクエリはCOUNT(*)を異なる方法で評価します

  25. 25

    ネストされたコンポーネントのすべてのレベルで繰り返し必要なプロパティをpropTypingすることに価値はありますか?

  26. 26

    Javascript:「let」で定義された変数を定義解除(または再定義)する方法

  27. 27

    1つのファイルで定義された複数のViewControllerでプロパティを使用するにはどうすればよいですか?

  28. 28

    複数のvueディレクティブを使用してnpmパッケージを作成するにはどうすればよいですか?または、ディレクティブごとに1つのパッケージを作成する必要がありますか?

  29. 29

    関数が定義されているモジュールまたはPythonで呼び出されるモジュールを除いて、try-exceptを定義する必要がありますか?

ホットタグ

アーカイブ