javascript - 在javascript中的require中传递变量

标签 javascript node.js

我正在使用 javascript 和 node.js 。我的代码中有以下几行:

var countryName = "Turkey";
var jsonPath = '../'+countryName+'/PersonalDetails.json';
console.log(jsonPath);
var PersonalDetails = require(jsonPath);

这给出了错误:找不到模块'../Turkey/PersonalDetails.json'

但是当我使用

var PersonalDetails = require('../Turkey/PersonalDetails.json'); 

效果很好。我错过了什么?

还附上我的 json 文件以供引用。

{
    "fields":[
                {
                    "fieldType":"Radio",
                    "fieldLabel":"Relevance to the transaction :",
                    "disclosureField":""    ,
                    "fieldList":["One carrying out the transaction","One on behalf of him/her the transaction is carried out","Indirect Relevance"]
                },
                {
                    "fieldType":"Radio",
                    "fieldLabel":"Is ID Card False",
                    "disclosureField":"",
                    "fieldList":["Yes","No"]
                },
                {
                    "fieldType":"Radio",
                    "fieldLabel":"Sex :",
                    "disclosureField":"gender",
                    "fieldList":["Male","Female","Unknown"]
                },
                {
                    "fieldType":"TextInput",
                    "fieldLabel":"First Name",
                    "disclosureField":"identity.first_name",
                    "fieldList":[]
                },
                {
                    "fieldType":"TextInput",
                    "fieldLabel":"SurName",
                    "disclosureField":"identity.last_name",
                    "fieldList":[]
                },
                {
                    "fieldType":"NumberInput",
                    "fieldLabel":"TR ID Number :",
                    "disclosureField":"",
                    "fieldList":[]
                },
                {
                    "fieldType":"NumberInput",
                    "fieldLabel":"Tax Number :",
                    "disclosureField":"",
                    "fieldList":[]
                },
                {
                    "fieldType":"TextInput",
                    "fieldLabel":"Mother's Name :",
                    "disclosureField":"",
                    "fieldList":[]
                },
                {
                    "fieldType":"TextInput",
                    "fieldLabel":"Father's Name :",
                    "disclosureField":"",
                    "fieldList":[]
                },
                {
                    "fieldType":"TextInput",
                    "fieldLabel":"Nationality :",
                    "disclosureField":"nationality",
                    "fieldList":[]
                },
                {
                    "fieldType":"TextInput",
                    "fieldLabel":"Occupation :",
                    "disclosureField":"occupation",
                    "fieldList":[]
                },
                {
                    "fieldType":"TextInput",
                    "fieldLabel":"Additional Information :",
                    "disclosureField":"",
                    "fieldList":[]
                }
                ]
}

最佳答案

您可以定义链接的路径:

var path = require(__dirname + "yourpath");

请告诉我这是否有帮助

编辑:

var jsonPath = require(__dirname + '/../' + countryName + '/PersonalDetails.json');

关于javascript - 在javascript中的require中传递变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37137327/

相关文章:

javascript - 如何简化/精简这段代码? (对象检查到函数调用中)

node.js - 如何从 package.json 中设置环境变量?

javascript - 将数据保存在数据库问题中,在控制台上收到 NULL

Javascript window.onload 不等待 DOM 加载

javascript - 使用 JQuery 在 div 中查找上一张和下一张图片

.net - SQL Server 数据库插入/更新 TCP 通知

javascript - 缺少架构错误 : Schema hasn't been registered for model "Post"

node.js - npm WARN : cannot run in wd ghost@0. 7.4 npm 安装 semver

javascript - 匹配直到下一行开始

javascript - 轮播效果 - 使元素在第一次迭代后消失