我正在尝试检查电子邮件的有效性(当用户开始输入onkeyup时),然后如果电子邮件有效,我将其推送到一系列独特的电子邮件中; 但是,一旦达到某个数字,我就会停止推送到阵列,在我的情况下它是3.
<textarea (ngModelChange)="onKeyUp($event)"></textarea>
onKeyUp(ev) {
let finalEmailList = []
this.finalEmailList = [];
this.numberOfUsers = 3;
let emails = ev.replace(' ', '').split(/,| /);
emails.forEach(email => {
if (this.validateEmail(email)) {
//If the email has a valid format, the push it to the array
finalEmailList.push(email);
//it's a lodash function to clean the array an keep only unique emails in the array
this.finalEmailList = _.uniq(finalEmailList);
if (this.finalEmailList.length <= this.numberOfUsers) {
this.numberOfUsers -= this.finalEmailList.length;
}
}
})
}
//returns true if the email has …Run Code Online (Sandbox Code Playgroud) 我愿意在Angular 2中做一个从60开始的倒数计时器(即59,58,57等......)
为此,我有以下内容:
constructor(){
Observable.timer(0,1000).subscribe(timer=>{
this.counter = timer;
});
}
Run Code Online (Sandbox Code Playgroud)
以上,每秒滴答,这很好; 但是,它按升序排列为无限数量.我不确定是否有办法调整它,所以我可以有一个倒数计时器.
我想在一个内部显示一个背景图像/加载微调器div,它将在其中加载一个图像,一旦它完全加载,图像将显示如下:
<div style="background-image:url('imageThatWillAppearBeforeLoad')"></div>
Run Code Online (Sandbox Code Playgroud)
如何使用Angular2/Ionic2?
我愿意在标签/页面之间实现向右/向左滑动操作,如下所示:
也可以通过此链接在GitHub上使用(适用于iOS)
https://github.com/cwRichardKim/RKSwipeBetweenViewControllers
另一个例子,但那个是基于Ionic1制作的:
www.ionic-sarav.rhcloud.com/ionic/tabbedSlideBox/slidingTabsUsingRepeat.html
任何人都知道如何在Ionic2/Angular2中实现这一目标?如果您可以分享一个想法,实现相同的步骤,它将是非常有帮助的!
我有一个非常长的JSON array,我使用forEach循环获取,我需要只显示最后5个元素.
array.forEach(showOnlyFiveElements => {
//only 5 elements should be show here
});
Run Code Online (Sandbox Code Playgroud)
不能用forEach完成吗?或者我应该去寻找不同的东西?
我想检查data.objectId数组中是否已存在msgArr.为此我运行下面的代码:
var exists = msgArr.objectId.includes(data.objectId);
if(exists === false){
msgArr.push({"objectId":data.objectId,"latLont":data.latLont,"isOnline":data.isOnline});
}
Run Code Online (Sandbox Code Playgroud)
该数组如下所示:
var msgArr = [
{isOnline:true,latLont:"123",objectId:"on0V04v0Y9"},
{isOnline:true,latLont:"1",objectId:"FpWBmpo0RY"},
{isOnline:true,latLont:"48343",objectId:"Qt6CRXQuqE"}
]
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
无法读取未定义的属性"包含"
我有以下数组:
var arr = [{"userId":"12j219","name":"Harry"},{"userId":"232j32", "name":"Nancy"}]
Run Code Online (Sandbox Code Playgroud)
我想在满足以下条件时删除整个对象:
userId == 12j219
Run Code Online (Sandbox Code Playgroud)
为此,我做了以下工作:
arr.filter((user)=>{
if(user.userId != "12j219"){
return user;
}
})
Run Code Online (Sandbox Code Playgroud)
它完成了这项工作,但肯定不会删除任何内容。如何从数组中删除对象?
我想有条件地将item.description一个字符串推送到一个对象中.
基本上,我有两个输入字段,用户需要输入拾取和下降位置.我拿这两个地址,然后将它们推入一个数组,这样我就可以用另一种方法检索它们.为此,我有以下代码:
chooseItem(item) {
this.pickAndDropLocationArray = {};
if (this.lastFocusedName == 'dropOff') {
this.pickAndDropLocationArray.dropOff = item.description
} else if (this.lastFocusedName == 'pickUp') {
this.pickAndDropLocationArray.pickUp = item.description
}
}
Run Code Online (Sandbox Code Playgroud)
预期产量:
{"pickUp":"locationName","dropOff":"locationName"}
Run Code Online (Sandbox Code Playgroud)
但问题是,如果它推送对象的droppoff,它会自动从对象中删除拾取,这在编写的代码时非常合乎逻辑.我没有想法,我不知道如何解决它.
javascript ×6
angular ×4
ionic2 ×2
arrays ×1
countdown ×1
ecmascript-6 ×1
foreach ×1
rxjs ×1
typescript ×1