updated 一个关系链bug修复
This commit is contained in:
parent
128eb45f46
commit
6bc22e041a
4
dist/relationship.min.js
vendored
4
dist/relationship.min.js
vendored
File diff suppressed because one or more lines are too long
@ -137,14 +137,21 @@ relationship.setMode('cantonese',{
|
||||
};
|
||||
var bindChange = function(){
|
||||
var value = $input.value.trim();
|
||||
var result = relationship({text:value,type:'chain'});
|
||||
if(result.length){
|
||||
var name = result[0].split('的').pop();
|
||||
if(!name){
|
||||
toggleSex($sex[0].checked);
|
||||
}else{
|
||||
toggleSex('爸爸,老公,儿子,哥哥,弟弟,兄弟'.indexOf(name)>-1);
|
||||
}
|
||||
var sex = $sex[0].checked?1:0;
|
||||
var mode = $mode[0].checked?$mode[0].value:$mode[1].value;
|
||||
var reverse = !$reverse[0].checked;
|
||||
if(value){
|
||||
var result = relationship({text:value,sex:sex,reverse:reverse,mode:mode});
|
||||
if(result.length){
|
||||
var name = result[0].split('的').pop();
|
||||
if(!name){
|
||||
toggleSex($sex[0].checked);
|
||||
}else{
|
||||
toggleSex('爸爸,老公,儿子,哥哥,弟弟,兄弟'.indexOf(name)>-1);
|
||||
}
|
||||
}
|
||||
}else{
|
||||
$result.value = '';
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -173,11 +173,11 @@
|
||||
exp:/,w,h|,h,w/g,
|
||||
str:''
|
||||
},
|
||||
{//并列关系处理1
|
||||
exp:/(.+)?\[([^\|]+?)\|([^\[\]]+?\|[^\[\]]+?)\](.+)?/g,
|
||||
{//并列关系处理1 X[A|B|C]Y = XAY#X[B|C]Y
|
||||
exp:/(.+)?\[([^\|]+?)\|([^\[\]]*\|[^\[\]]*)\](.+)?/g,
|
||||
str:'$1$2$4#$1[$3]$4'
|
||||
},
|
||||
{//并列关系处理2
|
||||
{//并列关系处理2 X[A|B]Y = XAY#XBY
|
||||
exp:/(.+)?\[([^\[\]\|]+?)\|([^\[\]\|]+?)?\](.+)?/g,
|
||||
str:'$1$2$4#$1$3$4'
|
||||
}
|
||||
@ -2488,7 +2488,10 @@
|
||||
}else if(isFemale){
|
||||
sex = 0;
|
||||
}
|
||||
}else{
|
||||
r_ids = [''];
|
||||
}
|
||||
// console.log('[from_ids]',from_ids,'r_ids',r_ids);
|
||||
var from_selector = from_ids.length>1?'['+from_ids.join('|')+']':from_ids[0];
|
||||
var to_selector = r_ids.length>1?'['+r_ids.join('|')+']':r_ids[0];
|
||||
return {
|
||||
@ -2513,7 +2516,7 @@
|
||||
_data[key] = [].concat(_mode[lang][key],_map[key]||[]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
var from_selectors = getSelectors(options.text);
|
||||
var to_selectors = options.target?getSelectors(options.target):[''];
|
||||
// console.log('[selectors]',from_selectors,to_selectors);
|
||||
@ -2526,7 +2529,7 @@
|
||||
// console.log('[ids]',data['selector'],data['sex'],ids);
|
||||
if(ids){
|
||||
ids.forEach(function(id){
|
||||
var temps = [id];
|
||||
var temps = [id];
|
||||
if(options.type=='chain'){
|
||||
if(options.reverse){
|
||||
temps = reverseId(id,data['sex']);
|
||||
|
@ -22,5 +22,7 @@ test('relationship.js show to be tested', function (t) {
|
||||
t.deepEqual(relationship({text:'姑妈',target:'舅妈',reverse:true}),['兄弟眷兄妇','兄弟眷弟妇']);
|
||||
t.deepEqual(relationship({text:'舅妈',target:'女儿',reverse:true}),['姑甥孙女','姑甥外孙女']);
|
||||
t.deepEqual(relationship({text:'老公的父母',target:'孩子'}),['爷爷','奶奶']);
|
||||
t.deepEqual(relationship({text:'爸爸的哥哥的弟弟的儿子'}),['堂哥','堂弟','兄弟','自己']);
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
Loading…
x
Reference in New Issue
Block a user