本文整理匯總了TypeScript中vscode.Memento.get方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript Memento.get方法的具體用法?TypeScript Memento.get怎麽用?TypeScript Memento.get使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類vscode.Memento
的用法示例。
在下文中一共展示了Memento.get方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: constructor
public constructor(
private readonly versionProvider: TypeScriptVersionProvider,
private readonly workspaceState: Memento
) {
this._currentVersion = this.versionProvider.defaultVersion;
if (workspaceState.get<boolean>(useWorkspaceTsdkStorageKey, false)) {
const localVersion = this.versionProvider.localTsdkVersion;
if (localVersion) {
this._currentVersion = localVersion;
}
}
}
示例2: show
public show(firstRun?: boolean): Thenable<{ oldVersion?: TypeScriptVersion, newVersion?: TypeScriptVersion }> {
const useWorkspaceVersionSetting = this.workspaceState.get<boolean>(useWorkspaceTsdkStorageKey, false);
const shippedVersion = this.versionProvider.defaultVersion;
const localVersion = this.versionProvider.localVersion;
const pickOptions: MyQuickPickItem[] = [];
pickOptions.push({
label: localize('useVSCodeVersionOption', 'Use VSCode\'s Version'),
description: shippedVersion.version.versionString,
detail: this.currentVersion.path === shippedVersion.path && (this.currentVersion.path !== (localVersion && localVersion.path) || !useWorkspaceVersionSetting) ? localize('activeVersion', 'Currently active') : '',
id: MessageAction.useBundled
});
if (localVersion) {
pickOptions.push({
label: localize('useWorkspaceVersionOption', 'Use Workspace Version'),
description: localVersion.version.versionString,
detail: this.currentVersion.path === localVersion.path && (this.currentVersion.path !== shippedVersion.path || useWorkspaceVersionSetting) ? localize('activeVersion', 'Currently active') : '',
id: MessageAction.useLocal
});
}
pickOptions.push({
label: localize('learnMore', 'Learn More'),
description: '',
id: MessageAction.learnMore
});
return window.showQuickPick<MyQuickPickItem>(pickOptions, {
placeHolder: localize(
'selectTsVersion',
'Select the TypeScript version used for JavaScript and TypeScript language features'),
ignoreFocusOut: firstRun
})
.then(selected => {
if (!selected) {
return { oldVersion: this.currentVersion };
}
switch (selected.id) {
case MessageAction.useLocal:
return this.workspaceState.update(useWorkspaceTsdkStorageKey, true)
.then(_ => {
if (localVersion) {
const previousVersion = this.currentVersion;
this._currentVersion = localVersion;
return { oldVersion: previousVersion, newVersion: localVersion };
}
return { oldVersion: this.currentVersion };
});
case MessageAction.useBundled:
return this.workspaceState.update(useWorkspaceTsdkStorageKey, false)
.then(_ => {
const previousVersion = this.currentVersion;
this._currentVersion = shippedVersion;
return { oldVersion: previousVersion, newVersion: shippedVersion };
});
case MessageAction.learnMore:
commands.executeCommand('vscode.open', Uri.parse('https://go.microsoft.com/fwlink/?linkid=839919'));
return { oldVersion: this.currentVersion };
default:
return { oldVersion: this.currentVersion };
}
});
}
示例3: useWorkspaceTsdkSetting
public get useWorkspaceTsdkSetting(): boolean {
return this.workspaceState.get<boolean>(useWorkspaceTsdkStorageKey, false);
}