Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.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
Angularjs 如何在指令JS中传递一个参数?_Angularjs - Fatal编程技术网

Angularjs 如何在指令JS中传递一个参数?

Angularjs 如何在指令JS中传递一个参数?,angularjs,Angularjs,我学习如何用Angular JS编写自定义指令。我做了第一步: .directive("myClass", function(){ return function (scope, element, attributes){ // HERE TO GET PARAMETER AND COMPARE } }); <div my-class="value"></div> 我尝试将参数值传递给指令my class,在用开关大小写检查该指

我学习如何用Angular JS编写自定义指令。我做了第一步:

.directive("myClass", function(){
     return function (scope, element, attributes){
          // HERE TO GET PARAMETER AND COMPARE
     }
});

<div my-class="value"></div>
我尝试将参数值传递给指令my class,在用开关大小写检查该指令并返回类名之后


如何在内部获取此值?

返回值错误。应该是这样的:

var module = angular.module('someModule', []);
module.directive("myClass", function(){
    return {
        restrict: 'A',
        // other scope options here...
        link: function ($scope, $el, $attrs) {
            // $attrs.myClass == 'value'
        }
    }
});

有多种方法可以将参数传递给指令。 参考

一种方法是在指令定义对象中使用scope属性,以便这些值在链接函数中可用

另一种方法是使用属性 在您的情况下,可以使用属性访问指令中指定的参数 尝试记录属性并查看所有可用的属性

您可以使用$parse来获取参数值

.directive("myClass", function($parse){
     return function (scope, element, attributes){
          // HERE TO GET PARAMETER AND COMPARE
          console.log(attributes);
          console.log($parse(attributes.myClass));
     }
});



<div my-class="value"></div>

将值传递给指令的最简单方法是隔离指令的范围

角度。模数PP,[] .directivemyClass、函数{ 返回{ 限制:“A”, 范围:{ myValue:“@” }, 链接:功能范围、元素、属性{ console.logscope.myValue } } };
这不是一个完整的指令定义。指令通常不会返回函数,它们返回一个具有作用域、模板、控制器等的对象。也许您只需要一个。阅读指南,并在有问题时提出更具体的问题。很难告诉您如何纠正这一点并使指令起作用,因为您没有真正描述指令应该做什么。返回类名是什么意思?您试图将其返回到何处?您可以通过编写属性来获取值。MyClass您可以逐行注释此sampe吗?@Darama抱歉,我听不懂。您可以解释每行内容吗?您可以从本文中清楚地了解我在控制台中未定义我如何使用类似ng类的指令,它将返回aaAttribute class=redI,我认为应该限制它:“C”