私はAngularJS、AngularUIのjQueryパススルーuiJq、およびjQueryのnoUiSliderプラグインを使用していますが、問題は実際にはメソッドへのアクセスに関するものです。HTML 部分はスライダーを正しくレンダリングします。スライダーの出力値に双方向バインドする必要があります。以下の JavaScript コードとそれらのバリエーションをコントローラーで試してみましたが、うまくいきませんでした。
uiJq はすべての jQuery プラグインで動作しないようです。noUiSlider が機能しないかどうか疑問に思っており、カスタム ディレクティブを記述する必要があります。また、遅延実行に対処する必要があるのか 、それともuiRefresh
手動で行う必要があるのか もわかりません$watch
。
HTML
<div class="noUiSlider" id="abc" ui-jq="noUiSlider"
ui-options="{range: [0, 100], start: 50, handles: 1}"></div>
JS
app.controller('MainCtrl', function ($scope) {
$scope.selectionValue = $('#abc').noUiSlider().val();
// error, seems to override whatever is in html
$scope.selectionValue = $('#abc').val();
// no error but no value is returned
});
ありがとう!