Update readme.md
This commit is contained in:
parent
3796594ae3
commit
57af1ba3c0
134
readme.md
134
readme.md
@ -10,80 +10,86 @@
|
|||||||
|
|
||||||
## 一、下载 & 安装
|
## 一、下载 & 安装
|
||||||
|
|
||||||
该 Javascript 库 / 模块可以用于前端也可以用于后端 Nodejs 中。
|
脚本库可以用于浏览器,也可以用于 Nodejs 环境中。
|
||||||
|
|
||||||
1. 直接下载dist/relationship.min.js,然后使用 `<script>`标签引入,可以得到全局的方法 `relationship`.
|
1. 直接在页面中引入 `<script type="text/javascript" src="https://passer-by.com/relationship/dist/relationship.min.js">`
|
||||||
2. 使用 npm 进行包管理,具体为:
|
|
||||||
|
获取全局方法 `relationship`
|
||||||
|
|
||||||
|
2. 使用 npm 安装名为 `relationship.js ` 的包
|
||||||
|
|
||||||
> **npm install relationship.js**
|
> **npm install relationship.js**
|
||||||
|
|
||||||
然后使用 `require` 引入模块
|
在相应页面中引入模块
|
||||||
|
|
||||||
 
|
|
||||||
|
|
||||||
```js
|
|
||||||
var relationship = require("relationship.js");
|
|
||||||
```
|
|
||||||
|
|
||||||
|
```js
|
||||||
|
// CommonJS 引入
|
||||||
|
const relationship = require("relationship.js");
|
||||||
|
```
|
||||||
|
```js
|
||||||
|
// ES Module 引入
|
||||||
|
import relationship from 'relationship.js';
|
||||||
|
```
|
||||||
|
 
|
||||||
|
|
||||||
## 二、使用
|
## 二、使用
|
||||||
1. 通用方法: 唯一的计算方法 `relationship`.
|
1. 通用方法: 唯一的计算方法 `relationship`.
|
||||||
|
|
||||||
* 选项模式`relationship(options)`
|
* 选项模式 `relationship(options)`
|
||||||
|
|
||||||
参数`options`结构为:
|
参数`options`结构为:
|
||||||
|
|
||||||
```js
|
```js
|
||||||
var options = {
|
var options = {
|
||||||
text:'', // 目标对象:目标对象的称谓汉字表达,称谓间用‘的’字分隔
|
text:'', // 目标对象:目标对象的称谓汉字表达,称谓间用‘的’字分隔
|
||||||
target:'', // 相对对象:相对对象的称谓汉字表达,称谓间用‘的’字分隔,空表示自己
|
target:'', // 相对对象:相对对象的称谓汉字表达,称谓间用‘的’字分隔,空表示自己
|
||||||
sex:-1, // 本人性别:0表示女性,1表示男性
|
sex:-1, // 本人性别:0表示女性,1表示男性
|
||||||
type:'default', // 转换类型:'default'计算称谓,'chain'计算关系链,'pair'计算关系合称
|
type:'default', // 转换类型:'default'计算称谓,'chain'计算关系链,'pair'计算关系合称
|
||||||
reverse:false, // 称呼方式:true对方称呼我,false我称呼对方
|
reverse:false, // 称呼方式:true对方称呼我,false我称呼对方
|
||||||
mode:'default', // 模式选择:使用setMode方法定制不同地区模式,在此选择自定义模式
|
mode:'default', // 模式选择:使用setMode方法定制不同地区模式,在此选择自定义模式
|
||||||
optimal:false, // 最短关系:计算两者之间的最短关系
|
optimal:false, // 最短关系:计算两者之间的最短关系
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
代码示例:
|
代码示例:
|
||||||
|
|
||||||
```js
|
```js
|
||||||
// 如:我应该叫外婆的哥哥什么?
|
// 如:我应该叫外婆的哥哥什么?
|
||||||
relationship({text:'妈妈的妈妈的哥哥'});
|
relationship({text:'妈妈的妈妈的哥哥'});
|
||||||
// => ['舅外公']
|
// => ['舅外公']
|
||||||
|
|
||||||
// 如:七舅姥爷应该叫我什么?
|
// 如:七舅姥爷应该叫我什么?
|
||||||
relationship({text:'七舅姥爷',reverse:true,sex:1});
|
relationship({text:'七舅姥爷',reverse:true,sex:1});
|
||||||
// => ['甥外孙']
|
// => ['甥外孙']
|
||||||
|
|
||||||
// 如:舅公是什么亲戚
|
// 如:舅公是什么亲戚
|
||||||
relationship({text:'舅公',type:'chain'});
|
relationship({text:'舅公',type:'chain'});
|
||||||
// => ['爸爸的妈妈的兄弟', '妈妈的妈妈的兄弟', '老公的妈妈的兄弟']
|
// => ['爸爸的妈妈的兄弟', '妈妈的妈妈的兄弟', '老公的妈妈的兄弟']
|
||||||
|
|
||||||
// 如:舅妈如何称呼外婆?
|
// 如:舅妈如何称呼外婆?
|
||||||
relationship({text:'外婆',target:'舅妈',sex:1});
|
relationship({text:'外婆',target:'舅妈',sex:1});
|
||||||
// => ['婆婆']
|
// => ['婆婆']
|
||||||
|
|
||||||
// 如:外婆和奶奶之间是什么关系?
|
// 如:外婆和奶奶之间是什么关系?
|
||||||
relationship({text:'外婆',target:'奶奶',type:'pair'});
|
relationship({text:'外婆',target:'奶奶',type:'pair'});
|
||||||
// => ['儿女亲家']
|
// => ['儿女亲家']
|
||||||
```
|
```
|
||||||
|
|
||||||
* 语句模式`relationship(exptession)`
|
* 语句模式 `relationship(exptession)`
|
||||||
|
|
||||||
参数`exptession`句式可以为:`xxx是xxx的什么人`、`xxx叫xxx什么`、`xxx如何称呼xxx`等.
|
参数`exptession`句式可以为:`xxx是xxx的什么人`、`xxx叫xxx什么`、`xxx如何称呼xxx`等.
|
||||||
|
|
||||||
代码示例:
|
代码示例:
|
||||||
|
|
||||||
```js
|
```js
|
||||||
// 如:舅妈如何称呼外婆?
|
// 如:舅妈如何称呼外婆?
|
||||||
relationship('舅妈如何称呼外婆?');
|
relationship('舅妈如何称呼外婆?');
|
||||||
// => ['婆婆']
|
// => ['婆婆']
|
||||||
|
|
||||||
// 如:外婆和奶奶之间是什么关系?
|
// 如:外婆和奶奶之间是什么关系?
|
||||||
relationship('外婆和奶奶之间是什么关系?');
|
relationship('外婆和奶奶之间是什么关系?');
|
||||||
// => ['儿女亲家']
|
// => ['儿女亲家']
|
||||||
```
|
```
|
||||||
|
|
||||||
2. 内部属性:获取当前数据表 `relationship.data`.
|
2. 内部属性:获取当前数据表 `relationship.data`.
|
||||||
|
|
||||||
@ -91,19 +97,19 @@ relationship('外婆和奶奶之间是什么关系?');
|
|||||||
|
|
||||||
4. 内部方法:用户自定义模式 `relationship.setMode(mode_name,mode_data)`.
|
4. 内部方法:用户自定义模式 `relationship.setMode(mode_name,mode_data)`.
|
||||||
|
|
||||||
代码示例(可参考数据表格式对数据进行覆盖):
|
代码示例(可参考数据表格式对数据进行覆盖):
|
||||||
|
|
||||||
```js
|
```js
|
||||||
// 关系解析语法
|
// 关系解析语法
|
||||||
// 【关系链】f:父,m:母,h:夫,w:妻,s:子,d:女,xb:兄弟,ob:兄,lb:弟,xs:姐妹,os:姐,ls:妹
|
// 【关系链】f:父,m:母,h:夫,w:妻,s:子,d:女,xb:兄弟,ob:兄,lb:弟,xs:姐妹,os:姐,ls:妹
|
||||||
// 【修饰符】 1:男性,0:女性,&o:年长,&l:年幼,#:隔断,[a|b]:并列
|
// 【修饰符】 1:男性,0:女性,&o:年长,&l:年幼,#:隔断,[a|b]:并列
|
||||||
relationship.setMode('northern',{
|
relationship.setMode('northern',{
|
||||||
'm,f':['姥爷'],
|
'm,f':['姥爷'],
|
||||||
'm,m':['姥姥'],
|
'm,m':['姥姥'],
|
||||||
'm,xb,s&o':['表哥'],
|
'm,xb,s&o':['表哥'],
|
||||||
'm,xb,s&l':['表弟'],
|
'm,xb,s&l':['表弟'],
|
||||||
});
|
});
|
||||||
```
|
```
|
||||||
|
|
||||||
## 三、开发 & 贡献
|
## 三、开发 & 贡献
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user