Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.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_Angularjs Directive_Angularjs Scope - Fatal编程技术网

Javascript 动态角度绑定指令作用域

Javascript 动态角度绑定指令作用域,javascript,angularjs,angularjs-directive,angularjs-scope,Javascript,Angularjs,Angularjs Directive,Angularjs Scope,如何将新范围绑定到指令 对于exmaple,我们有产品目录,如果您单击产品,将显示弹出窗口。 主要的一点是,我不想创建100个弹出窗口,这些弹出窗口将被model.id之类的东西隐藏并打开 我想做的就是在点击产品拇指时将一些模型绑定到弹出窗口 <li ng-repeat="product in products"> <button ng-click="openPopup(product)"></button> </li> // Some

如何将新范围绑定到指令

对于exmaple,我们有产品目录,如果您单击产品,将显示弹出窗口。 主要的一点是,我不想创建100个弹出窗口,这些弹出窗口将被model.id之类的东西隐藏并打开

我想做的就是在点击产品拇指时将一些模型绑定到弹出窗口

<li ng-repeat="product in products">
   <button ng-click="openPopup(product)"></button>
</li>


// Some controller
... 
$scope.openPopup = function(product) {
    var popup = angular.element('<popup product="product"></popup>');

    // Of course is not working because i want to bind this `product` argument
    $compile(popup)($scope);
}
  • //某控制器 ... $scope.openPopup=功能(产品){ var popup=角度元素(“”); //当然不起作用,因为我想绑定这个'product'参数 $compile(弹出窗口)($scope); }
    有人能告诉我怎么处理吗?
    谢谢

    我想在示例中,我们一次只显示一个弹出窗口,并且该弹出窗口是模态的

    模板:

    <li ng-repeat="product in products">
       <button ng-click="openPopup(product)"></button>
    </li>
    
    <popup ng-show="showPopup" product="selected_product"></popup>
    

    使用$index这可能会有所帮助,一旦编译并链接了弹出窗口,只需将其添加到DOM中即可。i、 e.element.append(弹出窗口)编译时出现问题。我不能用其他作用域编译它。。
    $scope.openPopup = function(product) {
       $scope.selected_product = product;
       $scope.showPopup = true;
    }