Estoy usando la llamada ajax para realizar la funcionalidad en un archivo de servicio y si la respuesta es exitosa, quiero redirigir la página a otra url. Actualmente, estoy haciendo esto usando js simple "window.location = response ['message'];". Pero necesito reemplazarlo con el código angularjs. He buscado varias soluciones en stackoverflow, usaron $ location. Pero soy nuevo en angular y tengo problemas para implementarlo.
$http({
url: RootURL+'app-code/common.service.php',
method: "POST",
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
dataType: 'json',
data:data + '&method=signin'
}).success(function (response) {
console.log(response);
if (response['code'] == '420') {
$scope.message = response['message'];
$scope.loginPassword = '';
}
else if (response['code'] != '200'){
$scope.message = response['message'];
$scope.loginPassword = '';
}
else {
window.location = response['message'];
}
// $scope.users = data.users; // assign $scope.persons here as promise is resolved here
})
javascript
angularjs
Farjad Hasan
fuente
fuente
Respuestas:
Puedes usar Angular
$window
:Ejemplo de uso en un controlador:
fuente
Puede redirigir a una nueva URL de diferentes maneras.
$location.path(YOUR_URL);
o$location.url(YOUR_URL);
. Entonces, la diferencia básica entre los 2 métodos es que$location.url()
también afecta a los parámetros de obtención, mientras$location.path()
que no.Recomendaría leer los documentos
$location
y$window
así comprender mejor las diferencias entre ellos.fuente
$location.path('/configuration/streaming');
esto funcionará ... inyecte el servicio de ubicación en el controladorfuente
Usé el siguiente código para redirigir a una nueva página
e inyectó el objeto $ window en mi función de controlador.
fuente
¡Podría ayudarte!
El ejemplo de código AngularJs
fuente
En AngularJS puede redirigir su formulario (al enviarlo) a otra página usando lo
window.location.href='';
siguiente:Simplemente intente esto:
fuente
También enfrenté problemas al redirigir a una página diferente en una aplicación angular
Puede agregar lo
$window
que Ewald ha sugerido en su respuesta, o si no desea agregarlo$window
, simplemente agregue un tiempo de espera y ¡funcionará!fuente
La forma simple que uso es
fuente
Una buena manera de hacerlo es usar $ state.go ('statename', {params ...}) es más rápido y más amigable para la experiencia del usuario en casos en los que no tiene que recargar y arrancar toda la configuración de la aplicación y demás
// rutas
fuente
fuente
Si desea utilizar un enlace, entonces: en el html tenga:
en el archivo mecanografiado
}
Espero que veas este ejemplo útil como lo fue para mí junto con las otras respuestas.
fuente
Utilizando
location.href="./index.html"
o crear
scope $window
y usando
$window.location.href="./index.html"
fuente