本文整理匯總了TypeScript中@angular/common.LocationStrategy.pushState方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript LocationStrategy.pushState方法的具體用法?TypeScript LocationStrategy.pushState怎麽用?TypeScript LocationStrategy.pushState使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類@angular/common.LocationStrategy
的用法示例。
在下文中一共展示了LocationStrategy.pushState方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: navigate
// I navigate to the location defined by the given URL segments (pathname, search,
// and hash).
private navigate( urlSegments: UrlSegments ) : void {
var url = urlSegments.pathname;
if ( urlSegments.search ) {
url += ( "?" + urlSegments.search );
}
if ( urlSegments.hash ) {
url += ( "#" + urlSegments.hash );
}
// Only push the state if the URL has actually changed. We only need this
// because the RetroLocation emits an event and we want this event to be a bit
// more closely tied to an actual change in the location.
if ( url !== this.url() ) {
this.locationStrategy.pushState(
// pushState - all the other strategies appear to pass NULL here.
null,
// title - all the other strategies appear to pass empty-string here.
"",
// path - we are encoding the entire location into the path.
url,
// queryParams - we are baking these into the path (above).
""
);
this.popStateEvents.next({
url: url,
pop: true,
type: "popstate"
});
}
}
示例2: go
/**
* Changes the browsers URL to the normalized version of the given URL, and pushes a
* new item onto the platform's history.
*/
go(path: string, query: any = ''): void {
this.platformStrategy.pushState(null, '', path, normalizeQuery(query));
this._update('push');
}