gpt4 book ai didi

javascript - 如何从另一个 Controller 函数调用具有不同 templateurl 和 Controller 的指令?

转载 作者:行者123 更新时间:2023-12-03 07:29:20 25 4
gpt4 key购买 nike

我对 AngularJS 完全陌生。 我有以下 HTML 代码

<div id="products" ng-contoller="productController" listProducts></div>

这将在 Angular js 运行时执行,并且我获取属性中的所有产品。我的指令如下

learnApp.directive('listproducts',function(){

return{
restrict: 'A',
templateUrl:"products.php",
controller:"productController"
};
});

但是我的购物车包含选定的产品 ID

因此,当单击购物车时,我想用所选产品的详细信息替换该指令。

<span class='glyphicon glyphicon-shopping-cart' ng-click='productDetails();'>{{totalProductList.totalProducts}}</span>

如下所示

productDetails 函数应调用该指令并将其替换为 productDetails.php

learnApp.directive('listproducts',function(){

return{
restrict: 'A',
if(shoppingCartImageclicked)
{
templateUrl:"productDetailsForSelectedItems.php",
controller:"productDetailControllerForSelectedItems"
}
else // initial load
{
templateUrl:"productDetails.php",
controller:"productDetailController"
}
};
});

最佳答案

说实话,这似乎是一个非常糟糕的主意。这不是指令的使用方式。一项指令应该有一项任务。您的指令有两个任务,因此应该有两个指令。您必须定义第二个指令并以编程方式解决 View 的更改(最好使用 javascript),例如通过使用不同的路线,或至少使用 ng-show/ng-if。

关于javascript - 如何从另一个 Controller 函数调用具有不同 templateurl 和 Controller 的指令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35861277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com