Είμαι με τη χρήση Personas το οποίο βασίζεται σε ιδιόκτητο ακίνητοnavigator.id . Δεδομένου ότι αυτή η ιδιοκτησία δεν είναι πρότυπο, ο compiler γραφομηχανή παράγει την ακόλουθη προειδοποίηση:
$ tsc home.ts --out my_ts_generated_code.js
/Users/..../home.ts(27,18): The property 'id' does not exist on value of type 'Navigator'
Αλλά το αρχείο .js με επιτυχία δημιουργείται και λειτουργεί με το πρόγραμμα περιήγησης FF15 χωρίς κανένα προειδοποιητικό μήνυμα / λάθους.
Θα περιλαμβάνει επίσης ένα polyfill για την navigator.id, σύμφωνα με τις οδηγίες της τεκμηρίωσης, έτσι navigator.idσίγουρα από τα διαθέσιμα σε κάθε πρόγραμμα περιήγησης θα.
Θα μπορούσε κάποιος να μου προτείνει πώς να ασχοληθεί με αυτή την προειδοποίηση;
index.html
<!-- some HTML omit above -->
<script src=https://login.persona.org/include.js></script>
<script src=my_ts_generated_code.js></script>
<button class=btn id=signin>Sign in</button>
<button class=btn id=signout>Sign out</button>
<!-- some HTML omit below -->
home.ts
declare var $;
class Student {
fullname : string;
constructor(public firstname, public middleinitial, public lastname) {
this.fullname = firstname + + middleinitial + + lastname;
}
}
interface Person {
firstname: string;
lastname: string;
}
function greeter(person : Person) {
return Hello, + person.firstname + + person.lastname;
}
var user = new Student(Jane, M., User);
$(function() {
$('#signin').on('click', function(e) {
e.preventDefault();
navigator.id.request();
});
$('#signout').on('click', function(e) {
e.preventDefault();
navigator.id.logout();
});
//document.body.innerHTML = greeter(user);
});













