base-data中文文档|base-data js中文教程|解析
基础数据
data
向 base-methods添加一个方法。
(动词使用markdown-toc生成的目录)
安装
使用npm安装:
$ npm install --save base-data
用法
data
向base添加一个方法,该方法可用于在应用程序中的指定对象上设置、获取和加载数据。
var Base = ;var data = ; // instantiate `Base`var base = ;// add `data` as a pluginbase;
例子
添加数据:
appdata'a' 'b';appdatac: 'd';appdata'e' 'f';console;//=> {a: 'b', c: 'd', e: ['f']}
缓存数据
默认情况下,所有数据都加载到app.cache.data
. 这可以通过传递插件初始化时使用的属性来定制。
例如,以下设置app.foo
为存储数据的对象:
app;appdata'a' 'b';console;//=> {a: 'b'}
应用程序接口
.dataLoader
注册数据加载器以将数据加载到app.cache.data
.
参数
ext
{String} : 匹配加载器的文件扩展名fn
{Function} : 加载器功能。
例子
var yaml = ; app; appdata'foo.yml';//=> loads and parses `foo.yml` as yaml
。数据
加载数据到 app.cache.data
参数
key
{String|Object} : 要设置的值或要扩展的对象的键。val
{任何}returns
{Object} : 返回Template
链接的实例
例子
console;//=> {}; appdata'a' 'b';appdatac: 'd';console;//=> {a: 'b', c: 'd'} // set an arrayappdata'e' 'f'; // overwrite the arrayappdata'e' 'g'; // update the arrayappdata'e' 'h' true;console;//=> ['g', 'h']
.data.extend
将对象浅扩展到app.cache.data
.
参数
key
{String|Object}:要扩展到的属性名称或对象app.cache.data
。点符号可用于扩展嵌套属性。value
{Object} : 要扩展到的对象app.cache.data
returns
{Object} : 返回链接的实例
例子
appdataa: b: c: 'd';appdata;console;//=> {c: 'd', x: 'y'}
.data.merge
将对象深度合并到app.cache.data
.
参数
key
{String|Object}:要合并到的属性名称或对象app.cache.data
。点符号可用于合并嵌套属性。value
{Object} : 要合并到的对象app.cache.data
returns
{Object} : 返回链接的实例
例子
appdataa: b: c: d: e: 'f';appdata;console;//=> {c: {d: {e: 'f', g: 'h'}}}
.data.union
将给定值联合到一个新的或现有的数组值上app.cache.data
。
参数
key
{String}:属性名称。点符号可用于嵌套属性。array
{Object} : 要添加或联合的数组app.cache.data
returns
{Object} : 返回链接的实例
例子
appdataa: b: 'c' 'd';appdata;console;//=> ['c', 'd', 'e', 'f']
.data.set
将给定值设置为app.cache.data
。
参数
key
{String|Object}:要合并到的属性名称或对象app.cache.data
。点符号可用于嵌套属性。val
{any} : 要设置的值app.cache.data
returns
{Object} : 返回链接的实例
例子
appdata;console;//=> {b: ['c', 'd']}
.data.get
获取key
from的值app.cache.data
。点符号可用于获取嵌套属性。
参数
key
{String}:要获取的属性的名称。returns
{any} : 返回值key
例子
appdataa: b: c: 'd';console;//=> {c: 'd'}
全局模式
Glob 模式可以作为字符串或数组传递。所有这些工作:
appdata'foo.json';appdata'*.json';appdata'*.json';// pass options to node-globappdata'*.json' dot: true;
命名空间
命名空间允许您将数据加载到特定键上,可选择使用文件路径的一部分作为键。
例子
鉴于foo.json
包含{a: 'b'}
:
appdata'foo.json';console;//=> {a: 'b'} appdata'foo.json' namespace: true;console;//=> {foo: {a: 'b'}} appdata'foo.json' { return path; };console;//=> {'foo.json': {a: 'b'}}
历史
v0.6.0
v0.5.0
- 使用is-valid-instance和is-registered来确保智能插件在正确的对象上注册。
v0.4.0
-
重构
-
添加
.data
用于获取和设置数据的方法。
v0.3.6
JSON.parse
如果没有定义其他加载器,则添加一个仅调用该方法的基本加载器.isRegistered
从base调用以确保插件仅在实例上加载一次
关于
相关项目
- base-cli : 将内置方法映射到 CLI args 的基本方法插件(还支持来自……更多|主页的方法
- base-config : base-methods 插件,它添加了一种
config
方法,用于将声明性配置值映射到其他“base… more | 主页 - base-option:向 base 添加一些选项方法,例如
option
,enable
和disable
。请参阅自述文件……更多| 主页 - base-pipeline : base-methods 插件,它添加了用于动态组合流插件管道的管道和插件方法。| 主页
- base-plugins:为您的基本应用程序添加“智能插件”支持。| 主页
- base-store:用于获取和持久化您的 base-methods 应用程序的配置值的插件。添加一个“商店”对象…更多| 主页
- base : 使用构建块等插件快速创建高质量 node.js 应用程序的框架 | 主页
贡献
拉取请求和星星总是受欢迎的。对于错误和功能请求,请创建问题。
贡献者
提交 | 贡献者 |
---|---|
69 | 琼施林克特 |
10 | 豆豆 |
构建文档
(本项目的 readme.md 是由verb生成的,请不要直接编辑 readme。对 readme 的任何更改都必须在.verb.md readme 模板中进行。)
要生成自述文件,请运行以下命令:
$ npm install -g verbose/verb#dev verb-generate-readme && verb
运行测试
运行和审查单元测试是熟悉库及其 API 的好方法。您可以使用以下命令安装依赖项并运行测试:
$ npm install && npm test
作者
乔恩·施林克特
执照
版权所有 © 2017,乔恩·施林克特。在MIT 许可下发布。
此文件由verb-generate-readme v0.6.0 于2017 年7 月20 日生成。