javascript - 如何将数组绑定(bind)到 ListView

标签 javascript windows-store-apps

我知道如何使用 Json 进行解析并将这样的文件绑定(bind)到 ListView :

[
{
    "key": "Arthur Schopenhauer",
    "numeroFrasi": 3,
    "foto" : "images/TEST.jpg",
},
{
    "key": "Nietzsche",
    "numeroFrasi": 1,
    "foto" : "images/TEST.jpg",
},
.........

但我无法理解,也无法在 Web 上找到如何绑定(bind)文件中的每个“frasi”(即数组),如下所示:

[
{
    "key": "Arthur Schopenhauer",
    "numeroFrasi": 3,
    "foto" : "images/TEST.jpg",
    "frasi": [
        "Fras1",
        "Frase 2 schopenahuer",
        "Frase 3 schopenhahuer"
    ]
},
{
    "key": "Nietzsche",
    "numeroFrasi": 1,
    "foto" : "images/TEST.jpg",
    "frasi": [
        "Frase 2 nietzsche",
        "Frase 3 nietzsche"
    ]
},
...............

我的对象不是一个数组,但它是这样定义的,形成一个用 Json 解析的 txt 文件:

这是通用定义:

 (function () {
"use strict";

var list = new WinJS.Binding.List();
var groupedItems = list.createGrouped(
    function groupKeySelector(item) { return item.group.key; },
    function groupDataSelector(item) { return item.group; }
);


WinJS.xhr({ url: "/data/frasi.txt" }).then(function (xhr) {
    var items = JSON.parse(xhr.responseText);

    // Add the items to the WinJS.Binding.List
    items.forEach(function (item) {
        list.push(item);
    });
});

那么这是具体的定义(因为当我导航到我的页面时,我只选择了一个“项目”,所以只有一个“key”,“numeriFrasi”,“foto”,“frasi”:

 WinJS.UI.Pages.define("/pages/itemDetail/itemDetail.html", {

    ready: function (element, options) {
        item = options && options.item ? Data.resolveItemReference(options.item) : Data.items.getAt(0);

“resolveItemReference”从创建的所有项目中获取一个项目

最佳答案

首先将 frasi 剥离到数组中。你可以使用 underscore.js

frasis = YOUROBJECT.map(function(el){return el.frasi;});
frasis = _(frasis).faltten();

然后用它来构建你的ListView

关于javascript - 如何将数组绑定(bind)到 ListView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15956021/

相关文章:

javascript - 向范围类型输入控件的最小值和最大值添加标签?

JavaScript - SQL 报告服务

javascript - 如何从 php get url ajax 中传递值?

sqlite - MvvmCross、SQLite、商店应用程序?

windows - IndexedDB 查看所有数据库和对象存储

windows-runtime - 如何获取当前的 LayoutAwarePage?

javascript - 了解 Coffee Script 中的类扩展和实例属性

javascript - 我如何在 javascript 中包含这些节点的循环

javascript - CSS 未在 Chrome 上加载 - 缓存问题

c# - 从本地驱动器(资源)加载文件作为存储文件