【问题标题】:Export array to be used in another javascript file导出数组以在另一个 javascript 文件中使用
【发布时间】:2019-06-29 03:17:15
【问题描述】:

在我的 post 请求中,我想检查 thisString 是否存在于另一个 javascript 文件数组中。

Array.js

exports.names = [
    'John',
    'Mary'
]

Main.js

if (names.includes(thisString)) {
    ...do stuff...
}

如果thisString = MaryMain.js 返回“未定义”。如果我 console.log(names) 它返回数组。但是console.log(names[0]) 是未定义的。如果我将数组复制并粘贴到 Main.js 文件中,它会按预期工作。

我想将数组放在另一个文件中,只是为了稍微清理一下。但是我做错了什么?

【问题讨论】:

  • 你在 Main.js 中哪里导入了names
  • 您的导入/导出语句是什么?
  • const names = require('../array');
  • @John107 Array.js 是否在 Main.js 上方的文件夹中?
  • @Leo 是的....这是个问题吗?我想从多个文件中访问它。

标签: javascript arrays node.js


【解决方案1】:

打字稿:

数组.ts

export let array = [1,2,3];

Main.ts

import {array} from "./Array.ts"
array.map(item => console.log(item +1))

Javascript (nodejs)

array.js

exports.array =  [1,2,3];

main.js

let module = require('./array.js');

let array = module.array;

array.map(item => console.log(item +1))

【讨论】:

    【解决方案2】:

    以下内容对我有用。你也可以试试:

    Array.js

    exports.names = [
        'John',
        'Mary'
    ]
    

    Main.js

    const data = require('./array.js');
    
    const thisString = 'Mary';
    if (data && data.names && data.names.includes(thisString)) {
        console.log('You are in!');
    }
    

    【讨论】:

    • 这“应该”工作,但在我的应用程序中返回 undefined。我不确定为什么。
    • 奇怪!在我的解决方案中,我假设您的 array.jsmain.js 在同一个文件夹中,否则您需要修改导入路径。
    • 是的,这很奇怪!我有 array.js 的正确路径,所以我不确定出了什么问题。
    猜你喜欢
    • 2020-11-06
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-09
    相关资源
    最近更新 更多