以上就是给各位分享asp-classic–If子句未按预期工作,同时本文还将给你拓展agm-marker-cluster未按预期工作、Angular2验证器未按预期工作、c–vector::erase
以上就是给各位分享asp-classic – If子句未按预期工作,同时本文还将给你拓展agm-marker-cluster 未按预期工作、Angular 2验证器未按预期工作、c – vector :: erase()未按预期工作、ClangFormat参数和参数装箱设置未按预期工作等相关知识,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:- asp-classic – If子句未按预期工作
- agm-marker-cluster 未按预期工作
- Angular 2验证器未按预期工作
- c – vector :: erase()未按预期工作
- ClangFormat参数和参数装箱设置未按预期工作
asp-classic – If子句未按预期工作
if ucase(displayanzeige) = "Y" \ or isnull(displayanzeige) \ and ucase(bstatus) = "2" \ or ucase(bstatus) = "1"
if子句的第一部分正在工作:
if ucase(displayanzeige) = "Y" \ or isnull(displayanzeige)
但第二部分不起作用:
and ucase(bstatus) = "2" \ or ucase(bstatus) = "1"
if子句有什么问题?请帮忙
解决方法
if (ucase(displayanzeige) = "Y" or isnull(displayanzeige)) and (ucase(bstatus) = "2" or ucase(bstatus) = "1")
你目前有:
1 or 2 and 3 or 4
系统可以将此解释为“1必须为真或2和3或4必须为真”
放置括号如下:
(1 or 2) and (3 or 4)
会告诉系统“1或2必须为真,3或4必须为真”
agm-marker-cluster 未按预期工作
如何解决agm-marker-cluster 未按预期工作?
- 我正在使用 agm-marker-cluster 来处理多个标记。我面临的问题是页面加载集群无法识别所有标记,它在页面加载时识别其中一些标记,但是一旦我放大或缩小它就可以正常工作。我想念什么?有人可以帮我吗?
app.component.html
<agm-marker-cluster imagePath="assets/media/pins/cluster_pins/m">
<agm-marker *ngFor="let device of devices" [iconUrl]="{url: device?.iconUrl}"
[latitude]="device?.latitude" [longitude]="device?.longitude"
(markerClick)="onMarkerClicked(device?.deviceid,infoWindow)">
</agm-marker>
</agm-marker-cluster>
- 如您所见,我正在动态显示标记,但无法提供更多代码。
app.component.ts
device: any [] = [];
this.devices = this.userServices.devices;
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
Angular 2验证器未按预期工作
export const PasswordsEqualValidator = (): ValidatorFn => { return (group: FormGroup): Observable<{[key: string]: boolean}> => { const passwordCtrl: FormControl = <FormControl>group.controls.password; const passwordAgainCtrl: FormControl = <FormControl>group.controls.passwordAgain; const valid = passwordCtrl.value.password === passwordAgainCtrl.value.passwordAgain; return Observable.of(valid ? null : { passwordsEqual: true }); }; };
以这种形式使用:
public signupForm: FormGroup = this.fb.group({ email: ['',Validators.required],passwords: this.fb.group({ password: ['',passwordAgain: ['',Validators.required] },{validator: CustomValidators.passwordsEqual()}) });
使用它的模板的一部分:
<div formGroupName="passwords"> <div[ngClass]="{error: !signupForm.get('passwords').valid}"> <labelfor="password">Password</label> <inputid="password" formControlName="password" type="password"> </div> <div[ngClass]="{error: !signupForm.get('passwords').valid}"> <labelfor="password-again">Password again</label> <inputid="password-again" formControlName="passwordAgain" type="password"> </div> </div>
问题是,即使密码匹配,它仍然显示错误.我看了很多不同的类似问题,但大多数人都有点混乱和过时,所以我想写一个更清洁的解决方案.
我猜测只需要一个小调整,但我似乎无法弄明白.
解决方法
export const PasswordsEqualValidator = (): ValidatorFn => { return (group: FormGroup): boolean => { const passwordCtrl: FormControl = <FormControl>group.controls.password; const passwordAgainCtrl: FormControl = <FormControl>group.controls.passwordAgain; const valid = passwordCtrl.value === passwordAgainCtrl.value; return valid ? null : { passwordsEqual: true }; }; };
顺便说一下,使用这种方法进行最佳实践:
export const PasswordsEqualValidator = (): ValidatorFn => { return (group: FormGroup): boolean => { const passwordCtrl: FormControl = group.get('password'); const passwordAgainCtrl: FormControl = group.get('passwordAgain'); const valid = passwordCtrl.value === passwordAgainCtrl.value; return valid ? null : { passwordsEqual: true }; }; };
这里演示:http://plnkr.co/edit/9PzGSIuBhvNz0fpJxTlS?p=preview
c – vector :: erase()未按预期工作
for(it1=prime.begin();it1<prime.end();it1++){ for(it2=it1+1;it2<prime.end();it2++){ if(*it2%*it1==0){ prime.erase(it2); } } if(*it1<1000) prime.erase(it1); }
在上面的代码片段中,我删除的数字是素数向量2中已存在的数字的倍数到9999(Eratosthenes的筛子).另外我只有1000以上的数字,但不知何故这些数字都没有被删除.
有人可以解释一下为什么?
提前致谢.
解决方法
it2 = prime.erase(it2);
但是如果你做了这个改变(你必须这么做!),你需要从for循环中删除它.您还需要为它进行两项更改.这是一些未经测试的代码:
for (it1 = prime.begin(); it1 < prime.end();) { for(it2 = it1 + 1; it2 < prime.end();) { if (*it2 % *it1 == 0) it2 = prime.erase(it2); else ++it2; } if (*it1 < 1000) it1 = prime.erase(it1); else ++it1; }
请注意,删除it2不会使it1无效,因为它严格地发生在it2之前,因为it2 = it1 1.所以你不必担心这种干扰.
ClangFormat参数和参数装箱设置未按预期工作
简短的回答:不,clang-format
不会做任何一个。
是AlignConsecutiveDeclarations
使参数声明对齐,而PointerAlignment
控制声明中*
和&
周围的间距。但是看来AlignConsecutiveDeclarations
会忽略PointerAlignment
,而PointerAlignment: Right
实际上只是意味着“在*
或&
之前添加一个空格”。
不幸的是,似乎没有一个documented。
对于for循环,您似乎需要一个名为AllowBinPackForLoop
的假想新样式选项,该选项默认为true(以实现向后兼容性),但为false则允许for循环为就像您在询问是否需要多条线一样进行拆分。但是据我所知,没有那样的东西。
今天关于asp-classic – If子句未按预期工作的分享就到这里,希望大家有所收获,若想了解更多关于agm-marker-cluster 未按预期工作、Angular 2验证器未按预期工作、c – vector :: erase()未按预期工作、ClangFormat参数和参数装箱设置未按预期工作等相关知识,可以在本站进行查询。
本文标签: