我发出接收身份验证令牌的请求。如果没问题,我会导航到index.html页面(参见下面的“NAVIGATE TO”index.html“)。
我该怎么做?
我尝试过:var app = new kendo.mobile.Application() app.navigate("index.html");
但它不起作用。我收到以下错误:
0x800a139e - JavaScript中的错误:您的kendo移动应用程序元素不包含任何具有data-role =“view”属性集的直接子元素。确保使用正确的容器实例化移动应用程序。
谢谢
class LoginViewModel extends kendo.data.ObservableObject {
isVisible = true;
username: string = "";
password: string = "";
errorText: string = "";
clickHandler: any = function (e) {
var self = this;
var data = { grant_type: "password", username: self.get("username"), password: self.get("password") };
$.ajax({
type: "POST",
contentType: "application/x-www-form-urlencoded",
url: "/token",
data: data
}).done(function (data, textStatus, jqXHR: JQueryXHR) {
// Cache the access token in session storage.
sessionStorage.setItem("accessToken", data.access_token);
***NAVIGATE TO "index.html"***
}).fail(function (jqXHR: JQueryXHR, textStatus, errorThrown) {
self.set("errorText", jqXHR.status + ': ' + jqXHR.statusText)
});
}
constructor() {
super();
super.init(this);
}
}
答案 0 :(得分:0)
你的导航没问题;您收到错误,因为应用程序容器不包含<div>
元素,其中data-role="view"
为直接子项。
你需要有类似的东西:
<body>
<div data-role="view" ....></div>
</body>
初始化您的应用
... = new kendo.mobile.Application(document.body
//or another jquery selector
);