2016-05-10 2 views
1

Я использую javascript и node.js. У меня есть следующие строки в моем коде:Передача переменной в require в javascript

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":[] 
       } 
       ] 
} 
+0

Я скопировал свой код и он работает отлично. Возможно, ваша версия узла имеет проблему, вы пытаетесь это с последней версией? –

+0

Я использую версию 5.10.1. Думаю, это последняя версия. – medha

+0

Последнее на сайте 6.1.0, но это нормально, я пробовал это на 5.9.1, и он работал нормально. Возможно, это связанная с os проблема, которая у вас есть? Я пробовал это на windows 7 –

ответ

0

Вы можете определить путь Линке это:

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

Позвольте мне знать, если это помогло

EDIT:

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

Можете ли вы прояснить его на основе моего кода. Что именно нужно использовать? – medha

+0

отредактировал мой ответ – nova

+0

/views\suspects/../Turkey/PersonalDetails.json. Это путь, который получается, если я использую указанную выше строку. Нужно ли использовать '\' вместо '/' ?? – medha

Смежные вопросы