angular.js - $watch监视下拉框,网页刷新时会自动执行一次,如何禁止自动执行?
漂亮男人
漂亮男人 2017-05-15 17:04:22
0
3
904

详细描述:
$watch监视一个下拉框,期望情况是只有当用户点击下拉框中的选项时,前端才请求后端更新数据。

目前的问题是:
当网页加载时,下拉框第一次出现,$watch会自动执行一次,ng的机制认为加载就是一次用户的点击。

希望了解如何禁止这种情况的$watch自动执行

漂亮男人
漂亮男人

全員に返信(3)
迷茫

お誘いありがとうございます。

まず、表現上の小さな欠陥を修正できますか。

「$watch はドロップダウン ボックスを監視する」と言いましたが、ng は双方向のデータ バインディングを実装し、宣言型 API を備えた $watch を備えたフレームワークです。ここでは不可能です。 DOM 要素を監視するには、ドロップダウン ボックスを使用します。適切な表現は、「ドロップダウン ボックスの選択された値を指す $watch によって監視される式」として記述することができ、これはより正確です (中国語が得意な友人はさらに最適化できます)。 ng是一个实现数据双向绑定的,具有声明式API的框架,这里的$watch是不可能去监视一个DOM元素下拉框的。合适的用词可以写作"$watch监视的一个指向下拉框所选值的表达式"更为准确(语文好的朋友可以再优化)。

在提问时,我们往往过分关注自己想知道问题的答案,而忽略表达方式,结果经常无疾而终,这类题目在sf中非常常见,提问人描述含糊其辞,令人无从做答。其实题主的描述还能看懂,只是有感而发多说几句。

言归正传,既然不想对数据初始化的那一次$watch

質問するとき、知りたい答えに集中しすぎて表現方法を無視してしまう傾向があり、この種の質問はSFではよくあることです。曖昧なので答えられません。実は、質問の内容はまだ理解できるのですが、私の気持ちなのでもう少し言いたいと思います。 🎜 🎜本題に戻りますが、データの初期化時に$watchの処理をしたくないので、このように判断しても大丈夫です🎜 リーリー
いいねを押す +0
PHPzhong

リーリー


リーリー
いいねを押す +0
習慣沉默

ngChange を使用すると初期化呼び出しを回避できます

注意:

  • ngModel と組み合わせて使用​​する必要があります

  • プログラムを使用して ngModel の値を変更しても、ngChange はトリガーされません

ユーザーが入力を変更すると、指定された式が評価されます。変更の最後にのみトリガーされる JavaScript の onchange イベントとは異なり、式はすぐに評価されます (通常、ユーザーがフォーム要素から離れるか、またはリターンキーを押します)。

ng文書変更

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート