Azure devops 创建VSTS扩展时保存状态或继续表单数据
我正在尝试制作一个像这样工作的VSTS扩展 Personas扩展允许用户输入名称、标签、描述和化身,并在左列添加项目,如图所示 如果我在web上这样做,这将不是一项困难的任务,但由于这是我第一次为VST创建扩展,我不知道如何实现这一点 我遵循了本教程: 并成功部署了我的扩展,只显示了我的名字 下面是我的代码,它显示了一些表单 my_hub.htmlAzure devops 创建VSTS扩展时保存状态或继续表单数据,azure-devops,Azure Devops,我正在尝试制作一个像这样工作的VSTS扩展 Personas扩展允许用户输入名称、标签、描述和化身,并在左列添加项目,如图所示 如果我在web上这样做,这将不是一项困难的任务,但由于这是我第一次为VST创建扩展,我不知道如何实现这一点 我遵循了本教程: 并成功部署了我的扩展,只显示了我的名字 下面是我的代码,它显示了一些表单 my_hub.html <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> &
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="lib/VSS.SDK.min.js"></script>
<style>
body {
background-color: rgb(0, 67, 117);
color: white;
margin: 10px;
font-family: "Segoe UI VSS (Regular)","-apple-system",BlinkMacSystemFont,"Segoe UI",sans-serif;
}
</style>
<script type="text/javascript">
VSS.init();
console.log(VSS);
VSS.ready(function() {
document.getElementById("name").innerText = VSS.getWebContext().user.name;
});
</script>
</head>
<body>
<form action="/action_page.php">
First name:<br>
<input type="text" name="firstname" value="Mickey">
<br>
Last name:<br>
<input type="text" name="lastname" value="Mouse">
<br><br>
<input type="submit" value="Submit">
</form>
</body>
</html>
身体{
背景色:rgb(0,67,117);
颜色:白色;
利润率:10px;
字体系列:“Segoe UI VSS(常规)”,“苹果系统”,BlinkMacSystemFont,“Segoe UI”,无衬线;
}
VSS.init();
console.log(VSS);
VSS.ready(函数(){
document.getElementById(“name”).innerText=VSS.getWebContext().user.name;
});
名字:
姓氏:
这将成功地在扩展中显示表单,但我的问题是:
请帮忙!谢谢。对于开发vsts扩展,我们不提供使用数据库的功能 您需要使用。VSTS扩展能够直接在Microsoft提供的基础架构上存储用户首选项和复杂的数据结构。这可以确保用户的数据安全,并像其他帐户和项目数据一样进行备份。这还意味着,对于简单的数据存储需求,您(作为扩展提供商)无需设置或管理(或支付)第三方数据存储服务 该服务旨在让您存储和管理两个不同的 数据类型:
- 设置:简单的键值设置(如用户首选项)
- 文档:类似复杂对象(文档)的集合
有关如何设置存储的更多详细信息,请参阅官方。我使用了教程中的确切代码。
dataService.getValue
和dataService.setValue
工作。但是删除或编辑它的功能是什么呢?我发现使用文档而不是键值存储可以做到这一点。我的新问题是,如何显示我拥有的所有数据?我试图使用getDocuments
获取我所有的数据,但它只在VSS.getService(VSS.ServiceIds.ExtensionData)内部工作。然后…
循环。为了重新表述我的问题,dataService.getDocuments(“MyCollection”)。然后(函数(docs)
我无法将文档
存储到另一个变量中,该文档是我以对象格式收集的数据。我需要将其存储到另一个变量中,以重新使用它在HTML中显示。有什么想法吗?请忽略我上面的问题,因为我已经解决了。但是,我还有另一个问题。文档存储是否可以与其他变量共享扩展?我试图在另一个扩展中使用dataService.getDocuments(“MyCollection2”)
,但它们似乎没有共享。这可能吗?@Dawn17暂时没有。