在javasccript中 - 创建新对象

时间:2016-07-12 08:26:59

标签: javascript angularjs json object

我有一个我需要的JSON对象。

const tpl = require('../../../../assets/jsons/article-tpl.json');

然后,我在迭代一个数组,我希望使用这个对象在article-tpl.json中定义的每次迭代时创建一个新模板。

angular.forEach(content.posts, (val, key) => {
       let _tpl = new Object(tpl);
       // do some things with _tpl
       // push _tpl to array to hold all the different tplts 
    }
});

此代码不起作用。 我得到了一系列相同的模板。你能帮我弄清楚问题是什么吗? 感谢。

2 个答案:

答案 0 :(得分:0)

require语句仅适用于node.js,JavaScript / Angular中没有require

您可以使用$http请求(来自本地)在Angular中加载JSON而不是远程下载,并根据需要将其用于Angular。

示例:

var myObject = $http.get('myObject.json')
                 .then(
                   function success(res) {
                     return res.data;
                   },
                   function failed(err) {
                     console.log(err)
                   }
                 );

res.data是一个数组,您可以迭代以提取您需要的所有内容并将其用作模板。

我使用类似的东西将CSV转换为JSON in this gist

答案 1 :(得分:0)

lodash救援。

let _tpl = _.cloneDeep(tpl);解决了这个问题。