我试图实现非常简单的<select>行为:如果用户取消更改,则恢复到以前的值。事实上,我成功了,但这花了我几个小时,而且我仍然对实施不满意,因为它不是那么明显和棘手。
所以,这是模板:
<select id="states" class="form-control" name="states" [ngModel]="selectedState"
(ngModelChange)="onStateChange(selectedState, $event)">
<option [ngValue]="null">All</option>
<option *ngFor="let state of states" [ngValue]="state">{{state.name}}</option>
</select>
Run Code Online (Sandbox Code Playgroud)
和组件:
export class AppComponent {
selectedState: State = null;
states: State[] = [
{ name: 'Alabama', population: 100000 },
{ name: 'Alaska', population: 50000 }
];
onStateChange(previousState: State, state: State): void {
// If we're changing state from "All" to any, it's OK
if (previousState === null) {
this.selectedState = state;
return;
}
// Otherwise we want the user to …Run Code Online (Sandbox Code Playgroud) 我正在尝试进行交易来创建 NFT 收藏品,交易被恢复并显示以下消息:Gas 估算失败:“执行恢复”。这笔交易可能会恢复。如果您想广播,则必须手动设置 Gas 限制。当我添加最大气体限制时,它仍然会恢复。
因此,我正在根据索引模式重新排列列表,并希望找到一种方法来计算我需要将列表恢复到原始顺序的模式。
对于我的示例,我使用 5 个项目的列表,因为我可以计算出将列表恢复到原始状态所需的模式。
然而,当处理数百个列表项时,这并不那么容易。
def rearrange(pattern: list, L: list):
new_list = []
for i in pattern:
new_list.append(L[i-1])
return new_list
print(rearrange([2,5,1,3,4], ['q','t','g','x','r']))
#['t', 'r', 'q', 'g', 'x']
Run Code Online (Sandbox Code Playgroud)
为了将其设置回原来的模式我会使用
print(rearrange([3,1,4,5,2],['t', 'r', 'q', 'g', 'x']))
#['q', 't', 'g', 'x', 'r']
Run Code Online (Sandbox Code Playgroud)
我正在寻找的是一种计算上述示例中的模式“[3,1,4,5,2]”的方法。运行脚本以便我可以将列表设置回其原始顺序。
使用一个更大的例子:
print(rearrange([18,20,10,11,13,1,9,12,16,6,15,5,3,7,17,2,19,8,14,4],['e','p','b','i','s','r','q','h','m','f','c','g','d','k','l','t','a','n','j','o']))
#['n', 'o', 'f', 'c', 'd', 'e', 'm', 'g', 't', 'r', 'l', 's', 'b', 'q', 'a', 'p', 'j', 'h', 'k', 'i']
Run Code Online (Sandbox Code Playgroud)
但我需要知道与这个新列表一起使用的模式,以便将其返回到原始状态。
print(rearrange([???],['n', 'o', 'f', 'c', 'd', 'e', 'm', 'g', 't', 'r', 'l', 's', 'b', 'q', 'a', 'p', 'j', 'h', …Run Code Online (Sandbox Code Playgroud) 在Eclipse中,我不小心SVN将我的代码更新为HEAD版本的存储库.我的本地代码是我想保留的,所以我该如何恢复呢?韩国社交协会.
我的页面上有几个可拖动和可放置的元素,它们具有accept属性.
目前我的代码设置如下:
$(".answer." + answer).draggable({
revert: "invalid"
, snap: ".graph"
});
$(".graph." + graph).droppable({
accept: ".answer." + answer
});
Run Code Online (Sandbox Code Playgroud)
因此,如果答案不正确,它将恢复到原来的位置.
用户还需要能够重置页面上的所有内容.我尝试了以下,但它不起作用:
$("btnReset").click(function(){
$(".graph.A").draggable({revert:true});
});
Run Code Online (Sandbox Code Playgroud) 我搞砸了,实际上把一个git repo推到了我的另一个回购的网址上.我试图撤消这个,但我遇到了麻烦,我之前没有使用'git reset'.
说最后一个好提交的哈希值是12345.我尝试过这样做git reset --hard 12345似乎没有错误但是由于某种原因它没有改变我的本地文件.我的本地工作目录仍包含意外推送的所有文件.我该如何还原它们?
我试图寻找答案,但我不能精确定义这些术语,而不是一直在错误的线程下.
发生了什么: 无意中我已经选择了file.m中的所有代码并将其全部删除.它变成了一个完整的空白文件.当我按下Ctrl + Z来UNDO它时,xcode崩溃了.
问题: 当我重新打开xcode(崩溃后)时,文件仍然是空白的(它在崩溃之前的几秒钟自动保存为空白文档) - 丢失了我的所有代码.我无法使用UNDO来拯救我,因为它自动保存并崩溃.
我需要什么:在此自动保存/崩溃之前,有没有办法将我的文件恢复/恢复到以前的状态?
额外信息: 源代码管理:我无法使用它,因为最后一次"提交"是6月27日.
Time Machine:没有外置HD使用它.它被禁用了.
更新1:我按下"丢弃最后一次更改"按钮,文件.m恢复到6月27日保存的文件.所以,还有一个问题:到目前为止,所有工作都失去了.
更新2:我找到了解决方案,并在下面发布.但我需要等到明天接受它作为答案.
更新3:我已经重新编写了文本以澄清我的问题.
我试着寻找一个答案,但没有发现任何匹配这个问题.如果已有答案,请随时将我链接到答案.
我所做的是提交并推送大量更改作为一次提交.虽然我没有把那个推入合并到主人.我现在想在上演任何内容之前回到状态,所以我可以将更改分阶段提交.
我尝试使用推送的更改创建一个新分支(已保存的工作),删除原始远程分支(用户登录),然后将新分支合并到原始本地分支,但这只是让我回到我所在的位置现在,用户登录分支不包含任何要添加/提交的内容.
那么我如何获得所有这些更改,以便我可以单独审核和分阶段(使用git add -p)?
我刚刚阅读下面的帖子,我有一个问题,我希望有人知道答案.
所以我知道我可以通过在git revert -m命令中指定其父分支来完全恢复主服务器的合并提交.我的问题是我可以从合并的分支而不是整个分支恢复单个提交.
例如,我从master分支到feature_1分支.我在feature_1分支上做了14次提交并合并回我的主人,然后我推送.
如何从主服务器中删除合并分支的提交7,同时将其他13分支保留在主服务器中.希望它可能并提前感谢任何回复或评论.
有没有一种方法可以还原到某个提交而不更改远程历史记录,基本上像git revert一样撤消对该提交所做的所有更改到一个新提交中?
例如-我有3次提交,提交A-> B-> C,我的头目前在CI上,现在想创建另一个提交D,它将具有与A相同的代码,以便我可以将该提交推送到远程分支而无需更改历史。