app-lib-global
Version:
全局数据操作 -【app-lib-global】
211 lines (151 loc) • 6.28 kB
Markdown
<!-------------------------------common start flag------------------------->
<center>
<div align="center">
<h1>全局数据操作 -【app-lib-global】</h1>
<a href="https://img.shields.io/badge/success: https local reason - goback refresh you brower can show badge image now-brightgree" title="click can show badge">
<img src="https://appbir.github.io/appbir-resource-statics/image/logo.png" height="60" />
</a>
<h1>app-lib-global</h1>
<a href="https://appbir/library">
<img src="https://img.shields.io/badge/appbir-library-blue"/>
</a>
<a href="https://appbir/library/-/web/detail/app-lib-global">
<img src="https://img.shields.io/badge/npm-v1.0.47-green">
</a>
<a href="https://appbir">
<img src="https://img.shields.io/badge/license-ISC-brightgree"/>
</a>
<div>
</center>
<!-------------------------------common end flag--------------------------->
<!-------------------------------background start flag--------------------->
# 一、背景介绍
* 全局绑定数据,便于设置一处,不用多处设置
* 便于很多变量不用每个页面都引入
<!-------------------------------background end flag----------------------->
<!-------------------------------functions start flag---------------------->
# 二、功能描述
* 支持 nodejs 和 js
<!-------------------------------functions end flag------------------------>
<!-------------------------------attention start flag---------------------->
# 三、注意事项
<!-------------------------------attention end flag------------------------>
<!-------------------------------examples start flag----------------------->
# 四、使用案列
<!-------------------------------examples end flag------------------------->
<!-------------------------------todo start flag--------------------------->
# 五、todo 列表
* nodejs 中 exec 下的全局变量发生变化 不能使用同一个全局变量
<!-------------------------------todo end flag----------------------------->
<!-------------------------------api start flag---------------------------->
# 六、API
## Constants
<dl>
<dt><a href="#ENV">ENV</a></dt>
<dd><p>支持的环境变量</p>
<pre><code>* NODE: 'node', // ndoejs 环境
* BROWSER: 'browser', // 浏览器环境
</code></pre>
</dd>
</dl>
## Functions
<dl>
<dt><a href="#getEnv">getEnv()</a> ⇒ <code>string</code></dt>
<dd><p>获取当前环境</p>
</dd>
<dt><a href="#isNodeEnv">isNodeEnv()</a> ⇒ <code>Boolean</code></dt>
<dd><p>判断是否为 nodejs 环境</p>
</dd>
<dt><a href="#isBroswerEnv">isBroswerEnv()</a> ⇒ <code>Boolean</code></dt>
<dd><p>判断是否为浏览器环境</p>
</dd>
<dt><a href="#getGlobal">getGlobal()</a> ⇒ <code>Object</code></dt>
<dd><p>获取当前运行环境的全局变量</p>
<ul>
<li>支持浏览器 window</li>
<li>支持 nodejs gloabl</li>
</ul>
</dd>
<dt><a href="#getbindData">getbindData(namespace)</a> ⇒ <code>any</code></dt>
<dd><p>获取绑定数据</p>
</dd>
<dt><a href="#bindToGlobal">bindToGlobal(namespace, bindData, [isForce])</a> ⇒ <code>any</code></dt>
<dd><p>绑定数据到全局</p>
</dd>
<dt><a href="#isBindToGlobal">isBindToGlobal(namespace, [needbindData])</a> ⇒ <code>boolean</code></dt>
<dd><p>是否也绑定到全局</p>
<ul>
<li>needbindData 绑定对象不为 undefined 时:</li>
<li>比对值相等 或者 json 序列化后相等 则表示已绑定</li>
</ul>
</dd>
</dl>
<a name="ENV"></a>
## ENV
支持的环境变量
```
* NODE: 'node', // ndoejs 环境
* BROWSER: 'browser', // 浏览器环境
```
**Kind**: global constant
<a name="getEnv"></a>
## getEnv() ⇒ <code>string</code>
获取当前环境
**Kind**: global function
**Returns**: <code>string</code> - 当前环境常量
<a name="isNodeEnv"></a>
## isNodeEnv() ⇒ <code>Boolean</code>
判断是否为 nodejs 环境
**Kind**: global function
**Returns**: <code>Boolean</code> - * true 是 nodejs 环境
* false 不是 nodejs 环境
<a name="isBroswerEnv"></a>
## isBroswerEnv() ⇒ <code>Boolean</code>
判断是否为浏览器环境
**Kind**: global function
**Returns**: <code>Boolean</code> - * true 是浏览器环境
* false 不是浏览器环境
<a name="getGlobal"></a>
## getGlobal() ⇒ <code>Object</code>
获取当前运行环境的全局变量
* 支持浏览器 window
* 支持 nodejs gloabl
**Kind**: global function
**Returns**: <code>Object</code> - - 获取的全局变量
* window
* global
<a name="getbindData"></a>
## getbindData(namespace) ⇒ <code>any</code>
获取绑定数据
**Kind**: global function
**Returns**: <code>any</code> - 已绑定的值
| Param | Type | Description |
| --- | --- | --- |
| namespace | <code>string</code> | 命名空间 |
<a name="bindToGlobal"></a>
## bindToGlobal(namespace, bindData, [isForce]) ⇒ <code>any</code>
绑定数据到全局
**Kind**: global function
**Returns**: <code>any</code> - 全局已绑定的值
| Param | Type | Default | Description |
| --- | --- | --- | --- |
| namespace | <code>string</code> | | 命名空间 |
| bindData | <code>any</code> | | 绑定数据 |
| [isForce] | <code>boolean</code> | <code>false</code> | 是否强制绑定 - 存在当前值时,进行强制绑定 |
<a name="isBindToGlobal"></a>
## isBindToGlobal(namespace, [needbindData]) ⇒ <code>boolean</code>
是否也绑定到全局
* needbindData 绑定对象不为 undefined 时:
* 比对值相等 或者 json 序列化后相等 则表示已绑定
**Kind**: global function
**Returns**: <code>boolean</code> - 是否绑定
* true 已绑定
* false 未绑定
| Param | Type | Default | Description |
| --- | --- | --- | --- |
| namespace | <code>string</code> | | 命名空间 |
| [needbindData] | <code>Object</code> | <code>'undefined'</code> | 绑定对象 |
<!-------------------------------api end flag------------------------------>
<!-------------------------------change logs begin flag--------------------->
# 七、发布日志
* [2023-11-18 08-05-04]-发布获取全局变量