将箭头函数的数组值反应传递到另一个.js文件

问题描述 投票:0回答:2

我对React和开发完全陌生,所以请不要介意这个“简单”的问题。

我有一个文件“ CreateRandomArray.js”,它将用小于10的随机数填充数组,并检查该数字是否已存在。

import React from 'react';

const createRandomArray = () => {

const array = [];
let indexer = 0;

do {
    let randomnumber = Math.floor(Math.random()*30)
    if ( randomnumber < 10){
        let result = array.includes(randomnumber)
        console.log(result)
        if (!result) {
            array[indexer] = randomnumber
            indexer = indexer + 1
        } null
    } null
 } while (indexer < 10)
}

export default createRandomArray

现在,我想在另一个文件中使用此数组,但是我找不到找到访问此数组中值的方法。我已经用“ return”做了几个版本,但是没有用。

所以,有人知道我如何在另一个.js文件中利用此数组并将这些值分配给另一个数组吗?

谢谢:)

ps:如果您可以像解释猿一样来解释它,将不胜感激^^

arrays reactjs arrow-functions
2个回答
0
投票

尝试这样。

const getRandomArray = (size, max) => {

  const array = [];
  let index = 0;

  for(index = 0; index < size; index ++) {
    let rand = 0;
    do {
      rand = Math.floor(Math.random() * max);
    } while (array.some((value) => value === rand )) // check array values
    array.push(rand); // then push
  }

  return {...array}; // return copy of the array.
}

export default getRandomArray;

0
投票

只需导入数组,要做到这一点,只需在顶部粘贴以下代码,即可将其导入所需的文件中:

import {createRandomArray} from './createRandomArrayFile'

其中createRandomArrayFile是所存储的.js文件的名称,尽管可以,但是您不必添加扩展名。

您现在可以将其称为{createRandomArray}


0
投票

您需要从另一个组件中的文件导入CreateRandomArray功能。您可以这样做。

ParentComponent.js

import React from 'react';
import CreateRandomArray from './CreateRandomArray.js`

const ParentComponent = (props)=> {

  const doSomethingWithArray = (CreateRandomArray)=>{
     var arrayValues = CreateRandomArray();
     //do something with arrayValues 
  }

  return (<div>{doSomethingWithArray(CreateRandomArray)</div>}

}

并且您将需要一个CreateRandomArray.js之内的返回值

CreateRandomArray.js

import React from 'react';

const createRandomArray = () => {

const array = [];
let indexer = 0;

do {
    let randomnumber = Math.floor(Math.random()*30)
    if ( randomnumber < 10){
        let result = array.includes(randomnumber)
        console.log(result)
        if (!result) {
            array[indexer] = randomnumber
            indexer = indexer + 1
        } null
    } null
 } while (indexer < 10)
  return array
}

export default createRandomArray;
© www.soinside.com 2019 - 2024. All rights reserved.