admin管理员组

文章数量:1425006

I have researched this problem and have not found a simple solution, or it has not been broken down into something I can understand. This should be extremely simple but it is not.

I need to store data (array) in one file (file1)

const myArray= new Array['data0', 'data1', 'data2'];
module.exports = { myArray};

the inside of the second file I try to import it and call it like this (file2)

import myArray from './file1';
console.log myarray[0, 1, 2]

I have researched this problem and have not found a simple solution, or it has not been broken down into something I can understand. This should be extremely simple but it is not.

I need to store data (array) in one file (file1)

const myArray= new Array['data0', 'data1', 'data2'];
module.exports = { myArray};

the inside of the second file I try to import it and call it like this (file2)

import myArray from './file1';
console.log myarray[0, 1, 2]
Share Improve this question asked Dec 2, 2020 at 20:23 Jason VJason V 6431 gold badge11 silver badges32 bronze badges 3
  • You export the array as an object with a property in it called "myArray". Also you're exporting it via old-school module.exports and then trying to import it as an ES2015 module. – Pointy Commented Dec 2, 2020 at 20:25
  • 1 Also that new Array[] syntax is incorrect; all you need is the array initializer. – Pointy Commented Dec 2, 2020 at 20:25
  • I hear what you are saying. I do not know how to fix that. it seems so simple but I am at my wits end with it – Jason V Commented Dec 2, 2020 at 20:31
Add a ment  | 

3 Answers 3

Reset to default 3

I'll be honest with you, I can't think of a usecase in which you would need to export/import a simple string array. Exporting an object (containing an array, perhaps) has a bit more utility. But the following should work.

// file1.mjs
const myArray = ['data0', 'data1', 'data2'];
export default myArray;
// file2.mjs
import myArray from './file1.mjs';
console.log('myArray =>', myArray);

Export

export const myArray = ['data0', 'data1', 'data2'];

Import

import { myArray } from './file1';

Here is what I did that worked for me (this is in node, not sure about browser)

file2.js:

const arr = ["a", "b", "c"];
export {arr};

file1.js:

import {arr} from "./file2.js"
console.log(arr);

outputs: ['a','b','c']

need to have "type":"module" set in package.json

I was confused at first as well on why the other posts weren't working, but when I changed it to the full file name it worked.

本文标签: Storing an array in javascript file and using it in another fileStack Overflow