Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.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 角度动态控制器是可选的_Javascript_Angularjs - Fatal编程技术网

Javascript 角度动态控制器是可选的

Javascript 角度动态控制器是可选的,javascript,angularjs,Javascript,Angularjs,因此,我使用以下方法为我的指令提供一个动态控制器 JS: HTML: 这很好,但是,我不需要在该指令的每个实例中都提供控制器。我使用它来确保作用域匹配,并且我可以访问作用域变量和方法 一些背景;显然,每次使用指令时,它都会创建一个新的范围,这很好,但我会在指令中动态添加一个ng click=“function()”。这意味着函数() 我不需要在每个实例中调用此ng click,因此我不需要在每个实例中使用控制器 本质上,是否有一种方式可以说控制器:'@'| null 编辑:作为一种解决方法,

因此,我使用以下方法为我的
指令
提供一个动态
控制器

JS:

HTML:

这很好,但是,我不需要在该指令的每个实例中都提供控制器。我使用它来确保作用域匹配,并且我可以访问作用域变量和方法

一些背景;显然,每次使用
指令
时,它都会创建一个新的
范围
,这很好,但我会在指令中动态添加一个
ng click=“function()”
。这意味着
函数()

我不需要在每个实例中调用此
ng click
,因此我不需要在每个实例中使用
控制器

本质上,是否有一种方式可以说
控制器:'@'| null


编辑:作为一种解决方法,我删除了隔离作用域(
scope:{…}
),并从指令参数访问
attrs
,这可以满足我的需要,但不能回答原来的问题。

您是否尝试过
controller:“?@”
?关于
ng单击的部分在与controller不同的范围内没有多大意义。也许一个演示可以帮助我们更好地理解这个问题。@simeg这给出了一个错误
参数“?@”不是一个函数,得到了未定义的
@charlietfl我正在使用controllerAs语法为控制器命名,然后它在一个隔离的作用域中。不..隔离的作用域是由
作用域:{minwidth:…}
创建的。别名和隔离作用域是不同的。再一次。。。为此创建一个简单的演示。您是否尝试过
controller:'?@'
?关于
ng单击的部分在与controller不同的范围内没有多大意义。也许一个演示可以帮助我们更好地理解这个问题。@simeg这给出了一个错误
参数“?@”不是一个函数,得到了未定义的
@charlietfl我正在使用controllerAs语法为控制器命名,然后它在一个隔离的作用域中。不..隔离的作用域是由
作用域:{minwidth:…}
创建的。别名和隔离作用域是不同的。再一次。。。为此创建一个简单的演示。
return {
    restrict: 'A',
    link: linkFn,
    scope: {
        minWidth: '@',
        maxWidth: '@',
        itemsVisible: '@'
    },
    controller: '@',
    name: 'controllerName'
};
<ul 
min-width="breakpoints.m"
items-visible="5"
controller-name="ProductFilteringController"
overflow-list>