`
decentway
  • 浏览: 157887 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

YUI3:DataSchema

阅读更多

DataSchema Utility 应用一个给定的模式 ,以任意格式的数据,标准化输入(例如JSON,XML,或者是分隔的文本)为一个JavaScript对象。DataSchema工具的作用是通过组建,在一种可预测的方式下,将各种各样的数据转换成一个固定的格式以便使用。

使用DataSchema工具

DataSchema basics

DataSchema.Array

DataSchema.JSON

DataSchema.XML

DataSchema.Text

DataSchema 作为一个DataSouce插件

DataSchema basics

 DataSchema classes 是一个独立的静态工具,它接受数据输入,再定义一个输出模式,就可以返回一个带有以下属性的JavaScript对象。(即:最后的返回结果一般为:{results=>[],meta=>{}})

PROPERTY TYPE DESCRIPTION
results 数组 数据数组
meta 对象 从输入数据中过滤出来的任意数据值。

你定义的模式依赖于你使用的DataSchema的子类(前面说的Array,JSON,XML,Text)

 

DataSchema.Array

当working with JavaScript数组时,使用DataSchema

三种情况:JavaScript对象,数组,primitive values(基本值?)

// A sample array of objects
[
    {make:"Chevrolet",model:"Bel Air",year:1957},
    {make:"Dodge",model:"Dart",year:1964},
    {make:"Ford",model:"Mustang",year:1968}
];

// A sample array of arrays
[
    ["Chevrolet", "Bel Air", 1957],
    ["Dodge", "Dart", 1964],
    ["Ford", "Mustang", 1968]
];

// A sample array of primitives
[
    "1957 Chevrolet Bel Air", "1964 Dodge Dart", "1968 Ford Mustang"
];

 

而模式的定义用的是下面的属性。

PROPERTY TYPE DESCRIPTION
resultsField 数组 包含在数组中,制定到特定值的keys

 

var mySchema = {
        resultFields: [{key:"make"}, {key:"model"}, {key:"year"}]
};

// Returns an object with the properties "results" and "meta"
var myOutput = Y.DataSchema.Array.apply(mySchema, myData)); 

DataSchema.JSON

当working with JavaScript object 或者JSON data时使用DataSchema.JSON.Typically, your data will hold meta values as well as an internal array of tabular data.(这句话如何理解??)

// Sample JSON data
{
    "profile":{
        "current":160,
        "target":150
    },
    "program": [
        {
            "category":"exercise",
            "weekly schedule":[
                {"day":"sunday", "activity":"swimming"},
                {"day":"monday", "activity":"running"},
                {"day":"tuesday", "activity":"biking"},
                {"day":"wednesday", "activity":"running"},
                {"day":"thursday", "activity":"swimming"},
                {"day":"friday", "activity":"running"},
                {"day":"saturday", "activity":"golf"}
            ]
        }
    ]
};

 

PROPERTY TYPE DESCRIPTION
metaFields Object Key/locator pairs that point to arbitrary data values.
resultListLocator String Locator to an internal array of tabular data.
resultFields Array Keys to assign to the values contained in the array.

var mySchema = {
    metaFields: {current:"profile.current", target:"profile.target"},
    resultListLocator: "program[0]['weekly schedule']",
    resultFields: [{key:"day"}, {key:"activity"}]
};

// Returns an object with the properties "results" and "meta"
var myOutput = Y.DataSchema.JSON.apply(mySchema, myData));

 

DataSchema.XML

注意,这部分在android 浏览器上会出现问题。

当working with XML数据时使用DataSchema.JSON.

DataSchema.Text

DataSchema 作为一个DataSouce插件

分享到:
评论

相关推荐

    generator-yui3:YUI3项目脚手架

    (尚未稳定)YUI3项目的Yeoman发电机安装sudo npm install -g generator-yui3建立专案yo yui3 awesomeProject.generator-yui3.json 允许您覆盖默认配置{ "project" : "awesomeProject", "lang" : ["fr", "en", "es",...

    JavaScript YUI 2.8: DataTable jquery form 异步请求显示数据分页

    NULL 博文链接:https://pouyang.iteye.com/blog/581021

    yui_2.9.0前端UI

    YUI 库,全称Yahoo! UI Library。是一组工具和控件,用JavaScript写成, 为的是用DOM 脚本,DHTML和AJAX等技术创建丰富的网页交互式应用程序。 YUI 基于BSD协议,对所有的使用方式都是免费的。YUI 项目包括YUI 库和两...

    yui3-master.zip

    yui3-master.zip

    YUI3 dialog组件

    基于YUI3的dialog组件该组件是基于YUI3开发的,功能强大,详细见http://www.qiqicartoon.com

    yui_2.9.0用于javascript基础教程

    适合图灵程序设计丛书web开发系列-javascript基础教程的学习使用

    yuitest:YUI测试

    YUITest JavaScript测试库 建造 要构建JavaScript文件,请在javascript目录中运行此文件: ant all 构建一个NPM软件包 要构建npm软件包(输出到javascript / build / yuitest / npm),请在javascript目录中运行此...

    YUI 入门教程YUI 入门教程YUI 入门教程

    YUI教程YUI 入门教程YUI 入门教程YUI 入门教程

    从YUI2到YUI3看前端的演变 pdf

    YUI3 引入了粒度更细的模块管理方式,通过异步 HTTP 请求加载模块、然后执行回调来加载和使用模块。现场有很多人提出疑问,大家无非关心的是“效率”二字。个人以为在现阶段,这种方式有一点激进,否能为广大用户所...

    从YUI2到YUI3看前端的演变

    从YUI2到YUI3看前端的演变

    YuiAPI:一个浏览器API测试客户端,API文档生成器,支持chromefirefox新版edge

    YuiAPI YuiAPI是一个浏览器扩展,非常简单易用的API调试客户端,你可以随意的使用它。 目录 3.1 3.2 4.1 4.2 4.3 4.4 当前版本 v1.1.2 支持浏览器 边缘 火狐浏览器 Chrome 边缘 最新版本 最新版本 安装 安全的...

    YUI3 完整包

    Yahoo! UI Library (YUI) 是一个开放源代码的 JavaScript 函数库,为了能建立一个高互动的网页,它采用了AJAX, DHTML 和 DOM 等程式码技术。它也包含了许多 CSS 资源。

    高效WEB前端开发之路:YUI3.15

     本书作者便是在此背景下,以国外最优秀的JavaScript框架之一——Yahoo User Interface Library(简称YUI)的最新版本YUI 3.15为基础编写而成。本书通过通俗易懂的语言和大量丰富的实例,帮助读者解决实际生产环境...

    yuicompressor-yui compressor

    yuicompressor-2.4.2.jar yuicompressor-2.4.7.jar jsZip.exe yuicompressor yui compressor js压缩工具 javascript压缩工具 css压缩工具 ------------------------------------ //压缩JS java -jar yui...

    js 压缩YUI

    雅虎的东西,简单的操作很好用 使用例子:java -jar D:\yuicompressor\yuicompressor\yuicompressor.jar E:\js\all.js -o E:\wap\wap2\js\all-min.js --charset utf-8 当然要装jdk了 不然就玩完了

    yui3-3.17.2最新版

    yui对于开发者来说是绝对的好用,开发者福利,特献上最新版

    yui 资源包

    yui 源码下载,3.9.0 r2 包,最新版本

    yui 3.1.2 源码 6MB大小 0资源分

    YUI3 源码 非compress版 YUI3 源码 非compress版 YUI3 源码 非compress版

    YUI3 中tree的两种实现

    NULL 博文链接:https://ttwang.iteye.com/blog/1741631

Global site tag (gtag.js) - Google Analytics