Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.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_Ionic Framework - Fatal编程技术网

Javascript 添加到收藏夹

Javascript 添加到收藏夹,javascript,angularjs,ionic-framework,Javascript,Angularjs,Ionic Framework,我有一个项目列表,在每个项目上我都有一个按钮,我可以单击“添加到收藏夹”,然后将一个变量设置为true,并启用一个类 在我的控制器中,我将$scope.isfavorite设置为false-单击按钮时,我将$scope.isfavorite设置为true 问题是页面上的所有项都会得到类 代码如下: HTML: Netto 在我的控制器中: $scope.addToFav = function () { $ionicPopup.show({ title: 'Tilføj til favori

我有一个项目列表,在每个项目上我都有一个按钮,我可以单击“添加到收藏夹”,然后将一个变量设置为true,并启用一个类

在我的控制器中,我将$scope.isfavorite设置为false-单击按钮时,我将$scope.isfavorite设置为true

问题是页面上的所有项都会得到类

代码如下: HTML:

Netto
在我的控制器中:

$scope.addToFav = function () {
$ionicPopup.show({
  title: 'Tilføj til favoritter',
  subTitle: 'Ønsker du at tilføje denne butik til dine favoritter?',
  scope: $scope,
  buttons: [
    { text: 'Nej' },
    {
      text: '<b>Ja</b>',
      type: 'button-positive',
      onTap: function(e) {
        $scope.isFavourite = true;
      }
    }
  ]
});
$scope.addToFav = function (item) {
    $ionicPopup.show({
        title: 'Tilføj til favoritter',
        subTitle: 'Ønsker du at tilføje denne butik til dine favoritter?',
        scope: $scope,
        buttons: [
            { text: 'Nej' },
            { text: '<b>Ja</b>',
                type: 'button-positive',
                onTap: function(e) {
                    item.isFavourite = true;
                }
            }
        ]
    });
$scope.addToFav=函数(){
$ionicPopup.show({
标题:“Tilføj til favoritter”,
副标题:“在蒂尔芙øje denne butik吃晚餐之前,你是谁?”,
范围:$scope,
按钮:[
{text:'Nej'},
{
文本:“Ja”,
键入:'按钮正',
onTap:功能(e){
$scope.isfavorite=true;
}
}
]
});
})


问题是,单击时,它不会将其与您单击的按钮隔离,而是在全局级别,这意味着我列表中的每个按钮都会获得class=“active”,其中它应该是我单击的按钮,您将要查看角度组件(可以找到一些文档。基本上,组件是一段可重用的代码,它有自己的作用域,因此对一个组件所做的更改不会影响其他组件。我将更详细地介绍,但我不知道Angular,因为我知道Angular 2。

通过使用
作用域:$scope
将作用域设置为您周围控制器的作用域因此,共享相同
的所有弹出窗口都是最受欢迎的
变量

你可以这样做:

<div ng-repeat="item in items">
    <button ng-click="addToFav(item)" ng-class="{'active' : item.isFavourite}"><i class="ion-heart"></i> Netto</button>
</div>

内托
控制器:

$scope.addToFav = function () {
$ionicPopup.show({
  title: 'Tilføj til favoritter',
  subTitle: 'Ønsker du at tilføje denne butik til dine favoritter?',
  scope: $scope,
  buttons: [
    { text: 'Nej' },
    {
      text: '<b>Ja</b>',
      type: 'button-positive',
      onTap: function(e) {
        $scope.isFavourite = true;
      }
    }
  ]
});
$scope.addToFav = function (item) {
    $ionicPopup.show({
        title: 'Tilføj til favoritter',
        subTitle: 'Ønsker du at tilføje denne butik til dine favoritter?',
        scope: $scope,
        buttons: [
            { text: 'Nej' },
            { text: '<b>Ja</b>',
                type: 'button-positive',
                onTap: function(e) {
                    item.isFavourite = true;
                }
            }
        ]
    });
$scope.addToFav=函数(项){
$ionicPopup.show({
标题:“Tilføj til favoritter”,
副标题:“在蒂尔芙øje denne butik吃晚餐之前,你是谁?”,
范围:$scope,
按钮:[
{text:'Nej'},
{文本:“Ja”,
键入:'按钮正',
onTap:功能(e){
item.isfavorite=true;
}
}
]
});
工作冲击器:


您是否在重复使用一系列收藏夹?现在,它只是静态内容,但稍后数据将来自类似于这样的Web服务?它们也会切换。