Je reçois une erreur avec le code TypeScript suivant:
///<reference path='../../../Shared/TypeScript/jquery.d.ts' />
///<reference path='../../../Shared/TypeScript/jqueryStatic.d.ts' />
function accessControls(action: Action) {
$('#logoutLink')
.click(function () {
var $link = $(this);
window.location = $link.attr('data-href');
});
}
Je reçois une erreur rouge soulignée pour les éléments suivants:
$link.attr('data-href');
Le message dit:
Cannot convert 'string' to 'Location': Type 'String' is missing property 'reload' from type 'Location'
Quelqu'un sait-il ce que cela signifie?
window.location
Est de type Location
tandis que .attr('data-href')
renvoie une chaîne, vous devez donc l'affecter à window.location.href
Qui est également de type chaîne. Pour cela, remplacez votre ligne suivante:
window.location = $link.attr('data-href');
pour celui-ci:
window.location.href = $link.attr('data-href');
vous avez manqué le href
:
Standard, pour utiliser window.location.href
comme window.location
est techniquement un objet contenant:
Properties
hash
Host
hostname
href <--- you need this
pathname (relative to the Host)
port
protocol
search
essayer
window.location.href = $link.attr('data-href');