Ionic - JavaScript Popup
Este serviço é usado para criar uma janela pop-up sobre a visualização normal, que será usada para interação com os usuários. Existem quatro tipos de pop-ups, a saber -show, confirm, alert e prompt.
Usando Mostrar Popup
Este pop-up é o mais complexo de todos. Para acionar pop-ups, precisamos injetar o$ionicPopup serviço ao nosso controlador e, em seguida, basta adicionar um método que irá disparar o pop-up que queremos usar, neste caso $ionicPopup.show(). oonTap(e) função pode ser usada para adicionar e.preventDefault(), que manterá o pop-up aberto, se nenhuma alteração for aplicada à entrada. Quando o pop-up for fechado, o objeto prometido será resolvido.
Código do Controlador
.controller('MyCtrl', function($scope, $ionicPopup) {
// When button is clicked, the popup will be shown...
$scope.showPopup = function() {
$scope.data = {}
// Custom popup
var myPopup = $ionicPopup.show({
template: '<input type = "text" ng-model = "data.model">',
title: 'Title',
subTitle: 'Subtitle',
scope: $scope,
buttons: [
{ text: 'Cancel' }, {
text: '<b>Save</b>',
type: 'button-positive',
onTap: function(e) {
if (!$scope.data.model) {
//don't allow the user to close unless he enters model...
e.preventDefault();
} else {
return $scope.data.model;
}
}
}
]
});
myPopup.then(function(res) {
console.log('Tapped!', res);
});
};
})
Código HTML
<button class = "button" ng-click = "showPopup()">Add Popup Show</button>
Você provavelmente notou no exemplo mencionado acima que algumas novas opções foram usadas. A tabela a seguir explicará todas essas opções e seus casos de uso.
Mostrar opções de pop-up
Opção | Tipo | Detalhes |
---|---|---|
modelo | corda | Modelo HTML embutido do pop-up. |
templateUrl | corda | URL do modelo HTML. |
título | corda | O título do pop-up. |
legenda | corda | O subtítulo do pop-up. |
cssClass | corda | O nome da classe CSS do pop-up. |
escopo | Escopo | Um escopo do pop-up. |
botões | Array [Object] | Botões que serão colocados no rodapé do popup. Eles podem usar suas próprias propriedades e métodos.text é exibido no topo do botão, type é a classe Ionic usada para o botão, onTapé a função que será acionada quando o botão for tocado. Retornar um valor fará com que a promessa seja resolvida com o valor fornecido. |
Usando Confirmar Popup
Um pop-up de confirmação é a versão mais simples do pop-up Ionic. Ele contém os botões Cancelar e OK que os usuários podem pressionar para acionar a funcionalidade correspondente. Ele retorna o objeto prometido que é resolvido quando um dos botões é pressionado.
Código do Controlador
.controller('MyCtrl', function($scope, $ionicPopup) {
// When button is clicked, the popup will be shown...
$scope.showConfirm = function() {
var confirmPopup = $ionicPopup.confirm({
title: 'Title',
template: 'Are you sure?'
});
confirmPopup.then(function(res) {
if(res) {
console.log('Sure!');
} else {
console.log('Not sure!');
}
});
};
})
Código HTML
<button class = "button" ng-click = "showConfirm()">Add Popup Confirm</button>
A tabela a seguir explica as opções que podem ser usadas para este pop-up.
Confirmar opções de pop-up
Opção | Tipo | Detalhes |
---|---|---|
modelo | corda | Modelo HTML embutido do pop-up. |
templateUrl | corda | URL do modelo HTML. |
título | corda | O título do pop-up. |
legenda | corda | O subtítulo do pop-up. |
cssClass | corda | O nome da classe CSS do pop-up. |
cancelText | corda | O texto do botão Cancelar. |
cancelType | corda | O tipo de botão Ionic do botão Cancelar. |
okText | corda | O texto do botão OK. |
okType | corda | O tipo de botão Ionic do botão OK. |
Usando Alerta Popup
Um alerta é um pop-up simples usado para exibir as informações do alerta ao usuário. Ele tem apenas um botão que é usado para fechar o pop-up e resolver o objeto prometido dos pop-ups.
Código do Controlador
.controller('MyCtrl', function($scope, $ionicPopup) {
$scope.showAlert = function() {
var alertPopup = $ionicPopup.alert({
title: 'Title',
template: 'Alert message'
});
alertPopup.then(function(res) {
// Custom functionality....
});
};
})
Código HTML
<button class = "button" ng-click = "showAlert()">Add Popup Alert</button>
Isso produzirá a seguinte tela -
A tabela a seguir mostra as opções que podem ser usadas para um pop-up de alerta.
Opções de alerta pop-up
Opção | Tipo | Detalhes |
---|---|---|
modelo | corda | Modelo HTML embutido do pop-up. |
templateUrl | corda | URL do modelo HTML. |
título | corda | O título do pop-up. |
legenda | corda | O subtítulo do pop-up. |
cssClass | corda | O nome da classe CSS do pop-up. |
okText | corda | O texto do botão OK. |
okType | corda | O tipo de botão Ionic do botão OK. |
Usando o Prompt Popup
O último pop-up Ionic que pode ser criado usando o Ionic é prompt. Tem um botão OK que resolve a promessa com valor da entrada e o botão Cancelar que resolve com valor indefinido.
Código do Controlador
.controller('MyCtrl', function($scope, $ionicPopup) {
$scope.showPrompt = function() {
var promptPopup = $ionicPopup.prompt({
title: 'Title',
template: 'Template text',
inputType: 'text',
inputPlaceholder: 'Placeholder'
});
promptPopup.then(function(res) {
console.log(res);
});
};
})
Código HTML
<button class = "button" ng-click = "showPrompt()">Add Popup Prompt</button>
Isso produzirá a seguinte tela -
A tabela a seguir mostra as opções que podem ser usadas para um pop-up de prompt.
Opções de prompt de pop-up
Opção | Tipo | Detalhes |
---|---|---|
modelo | corda | Modelo HTML embutido do pop-up. |
templateUrl | corda | URL do modelo HTML. |
título | corda | O título do pop-up. |
legenda | corda | O subtítulo do pop-up. |
cssClass | corda | O nome da classe CSS do pop-up. |
tipo de entrada | corda | O tipo de entrada. |
inputPlaceholder | corda | Um espaço reservado para a entrada. |
cancelText | corda | O texto do botão Cancelar. |
cancelType | corda | O tipo de botão Ionic do botão Cancelar. |
okText | corda | O texto do botão OK. |
okType | corda | O tipo de botão Ionic do botão OK. |