import * as React from "react"; import * as SDK from "azure-devops-extension-sdk"; import { CommonServiceIds, IHostNavigationService } from "azure-devops-extension-api"; import { Button } from "azure-devops-ui/Button"; export interface INavigationTabState { currentHash?: string; } export class NavigationTab extends React.Component<{}, INavigationTabState> { constructor(props: {}) { super(props); this.state = {}; } public render(): JSX.Element { const { currentHash } = this.state; return ( <> { currentHash &&
Current hash: {currentHash}
}
); } private onGetHashClick = async (): Promise => { const navService = await SDK.getService(CommonServiceIds.HostNavigationService); const hash = await navService.getHash(); this.setState({ currentHash: hash }); } private onUpdateHashClick = async (): Promise => { const navService = await SDK.getService(CommonServiceIds.HostNavigationService); navService.setHash("time=" + new Date().getTime()); } private onUpdateDocumentTitle = async (): Promise => { const navService = await SDK.getService(CommonServiceIds.HostNavigationService); navService.setDocumentTitle("Sample hub new title: " + new Date().getTime()); } }