如何动态隐藏/显示离子弹出按钮



我正在进行我的第一个大型离子项目,并且陷入了困境。有人知道如何在离子弹出窗口中动态隐藏和显示按钮吗?我最初需要隐藏按钮,但在发生某些事情后,按钮应该会显示出来。知道怎么做吗?

为了进一步解释,这里需要的是在$ionicPopup按钮内部提供角度指令。例如

 buttons: [{
            text: 'Cancel'
        }, {
            text: '<b ng-disabled="user.length<1">Delete</b>',
            type: 'button-crimson'
    }]

但是ng-disabled="user.length<1"在渲染弹出窗口时会被修剪。

如果您仍在寻找答案。。。

我为我的按钮阵列创建了一个变量

var buttons = [{...}, {...}]

然后将其分配给弹出中的对象

$ionicPopup.show({
    templateUrl: 'templates/pop-up.html',
    title: 'My Popup',
    subTitle: 'stuff,
    scope: $scope,
    **buttons: buttons,**

然后会改变阵列

buttons.splice(0, 1, {/*new button*/})

我还没有测试过它,但如果你想编辑标题或类,它也可以工作

buttons[0].type = 'newCssClass';

我的工作是将动态按钮放在弹出窗口的模板中,而不是按钮数组中。这并不理想,但它会起作用的。

例如:

addPopup = $ionicPopup.show({
        templateUrl: 'templates/pop-up.html',
        title: 'My Popup',
        subTitle: 'stuff,
        scope: $scope,
        buttons: [{
                text: 'Cancel',

然后在pop-up.html中,你可以像往常一样做你通常的角度ng-if/ng-hide/ng-disabled/etc之类的事情。缺点是这些按钮不会出现在数组中按钮所在的底部,但通过一些造型工作,你可以让它看起来仍然很好看。

使用$scope变量和ng隐藏/ng显示应该很容易

function something_happens(){
  $scope.it_happened = true;
}
<button ng-show="it_happened">Qlik Me</button>

只有当$scope.it_happened==true

时,该按钮才会显示

相关内容

  • 没有找到相关文章

最新更新