2017-07-04 39 views
0

我在下面有這段代碼,我想用undercorejs來顯示json文件中的文本。我需要修改該部分,如下面的評論所示:用js和underscore.js顯示代碼的問題

我試圖複製它,但它導致錯誤並且不顯示任何內容。有什麼建議麼?對不起,如果這是一個愚蠢的問題,但我是編程新手。

hold.options(工具提示對象)= { (基於自動生成部分屬性):{ (適當地基於所ITEMNAME自動生成):{ 噸:item.Texts,
} }

var log = function(contents) { 
    if (_.isArray(contents)) { 
    _.each(contents, function(e, i, l) { 
     log(e); 
     $('#result'); 
     $('#result').append('</br></br>'); 
    }); 
    } else { 
    $('#result').append(contents); 
    } 
}; 

var ty = [{ 
    "Language": "en-GB", 
    "Section": "Sales&Marketing", 
    "ItemName": "CalculationType", 
    "Texts": "Having selected the account heading select the calculation ..." 
}, { 
    "Language": "en-GB", 
    "Section": "Taxes", 
    "ItemName": "Save", 
    "Texts": "The Master Tax Table has been pre populated with the current UK, ..." 
}]; 
var out = []; 
_.each(ty, function(item, key) { 
    var hold = {}; 

//Part that needs to change 
    hold.options = { 
    Taxes: { 
     Save: { 
     t: item.Texts, 
     } 
    } 
    }; 
    out.push(hold) 
}); 
_.each(out, function(item) { 
    log(item.options.Taxes.Save.t + '<br>'); 
}) 

回答

1

這似乎工作:

Fiddle

//Part that needs to change 
    hold.options = {}; 
    hold.options[item.Section] = {}; 
    hold.options[item.Section][item.ItemName] = {t: item.Texts}; 
    out.push(hold) 
}); 
_.each(out, function(item) { 
    if(item.options.Sales !== undefined && item.options.Sales.Type !== undefined){ 
    log(item.options.Sales.Type.t); 
    } 
    else if(item.options.Taxes !== undefined && item.options.Taxes.Save !== undefined){ 
    log(item.options.Taxes.Save.t); 
    } 
+0

我發佈的代碼的作品..它是當我修改它類似於上面的黃色框,它不工作! – noel293

+0

那麼你究竟如何修改它,然後會發生什麼?你可以使用我的Codepen來顯示確切的問題。 –

+0

它必須遵循這種格式 - > hold.options(tooltips object)= {(基於自動生成的部分的屬性):{(正確基於itemName自動生成):{t:item.Texts, }} – noel293