Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 应用Array.filter时,传递给函数的数组引用丢失_Javascript_Angular_Typescript - Fatal编程技术网

Javascript 应用Array.filter时,传递给函数的数组引用丢失

Javascript 应用Array.filter时,传递给函数的数组引用丢失,javascript,angular,typescript,Javascript,Angular,Typescript,此模式的思想是管理不同的阵列。当用户单击某个选项时,它会选择/取消选择该选项,并将该选项的值推入/从相应的数组中过滤 我正在尝试编写一个通用方法来管理调用它的数组,目前它可以很好地推送值,但不能用于过滤 角度分量方法(不起作用) 角度分量方法(如果直接引用数组则有效) 注意 console.log(testingArray === this.potatoesArray) // true 模板实施 <div class="option" (click)='manageOptions($ev

此模式的思想是管理不同的阵列。当用户单击某个选项时,它会选择/取消选择该选项,并将该选项的值推入/从相应的数组中过滤

我正在尝试编写一个通用方法来管理调用它的数组,目前它可以很好地推送值,但不能用于过滤

角度分量方法(不起作用)

角度分量方法(如果直接引用数组则有效)

注意

console.log(testingArray === this.potatoesArray) // true
模板实施

<div class="option" (click)='manageOptions($event, this.potatoesArray)'>
  <span>OPTION 1</span>
  ...                              
</div>

<div class="option" (click)='manageOptions($event, this.potatoesArray)'>
  <span>OPTION 2</span>                              
  ...
</div>

<div class="option" (click)='manageOptions($event, this.potatoesArray)'>
  <span>OPTION 3</span>                              
  ...
</div>

选择1
...                              
选择2
...
选择3
...

从模板实现中删除

<div class="option" (click)='manageOptions($event, potatoesArray)'>
  <span>OPTION 1</span>
  ...                              
</div>

<div class="option" (click)='manageOptions($event, potatoesArray)'>
  <span>OPTION 2</span>                              
  ...
</div>

<div class="option" (click)='manageOptions($event, potatoesArray)'>
  <span>OPTION 3</span>                              
  ...
</div>

选择1
...                              
选择2
...
选择3
...

从模板实现中删除

<div class="option" (click)='manageOptions($event, potatoesArray)'>
  <span>OPTION 1</span>
  ...                              
</div>

<div class="option" (click)='manageOptions($event, potatoesArray)'>
  <span>OPTION 2</span>                              
  ...
</div>

<div class="option" (click)='manageOptions($event, potatoesArray)'>
  <span>OPTION 3</span>                              
  ...
</div>

选择1
...                              
选择2
...
选择3
...

让人们知道你在问题中可能遇到的任何错误总是一个好主意,这样人们就不必猜测了。@MikeMcCaughan完全同意你的观点,但没有错误出现:让人们知道你在问题中可能遇到的任何错误总是一个好主意,所以人们不必猜测。@MikeMcCaughan完全同意你的观点,但没有出现错误:DI确实发现这不是角度的问题,但这里的javascript行为更多的是一个简化的问题,它表明,如果数组是从参数引用的,则设置数组的新值是一种技巧。我确实发现这不是角度的问题,但这里的javascript行为更多的是一个简化的问题,它表明,如果数组是从参数引用的,则设置数组的新值是一种技巧。
<div class="option" (click)='manageOptions($event, potatoesArray)'>
  <span>OPTION 1</span>
  ...                              
</div>

<div class="option" (click)='manageOptions($event, potatoesArray)'>
  <span>OPTION 2</span>                              
  ...
</div>

<div class="option" (click)='manageOptions($event, potatoesArray)'>
  <span>OPTION 3</span>                              
  ...
</div>