Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用属性参数在AngularJS中设置模型的属性?_Javascript_Angularjs_Angularjs Directive - Fatal编程技术网

Javascript 如何使用属性参数在AngularJS中设置模型的属性?

Javascript 如何使用属性参数在AngularJS中设置模型的属性?,javascript,angularjs,angularjs-directive,Javascript,Angularjs,Angularjs Directive,我试图在AngularJS中构建一个可以重用的指令(UI滑块)。但是我需要多个滑块,所以滑块的一个属性应该是它绑定到的属性。我在考虑使用一个名为“property”的属性,更改滑块后该属性将得到更新,但我不确定语法,也不确定在执行侦听时如何侦听该属性 有人能给我指出正确的方向吗?最重要的是,您应该使用隔离范围声明指令,以便指令的多个实例可以同时使用不同的属性值。此外,若要在某些内容发生更改时进行监视,请在链接函数中添加$watcher: .directive("slider, function(

我试图在AngularJS中构建一个可以重用的指令(UI滑块)。但是我需要多个滑块,所以滑块的一个属性应该是它绑定到的属性。我在考虑使用一个名为“property”的属性,更改滑块后该属性将得到更新,但我不确定语法,也不确定在执行侦听时如何侦听该属性


有人能给我指出正确的方向吗?

最重要的是,您应该使用隔离范围声明指令,以便指令的多个实例可以同时使用不同的属性值。此外,若要在某些内容发生更改时进行监视,请在链接函数中添加$watcher:

.directive("slider, function(){
    return {
        restrict : 'AE',
        scope : {
            property : '='
        },
        template : '.... your template....',
        link : function(scope, elem, attr){

           ... other code if you have it...

           // Watch for changes in the property variable
            scope.$watch('property', function(newVal){
                console.log('Do something with ' + newVal;
            });
        }
    }
});
在HTML中,您可以这样声明:

<slider property="person.age" />

其中,
person.age
是要传递到滑块中的范围变量