Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
C
cms_sys
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
西魏
cms_sys
Commits
f1a1ee7e
Commit
f1a1ee7e
authored
Nov 30, 2019
by
sgjj
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加自定义模型
parent
ad7d5402
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
176 additions
and
74 deletions
+176
-74
form.ftl
src/main/webapp/WEB-INF/manager/cms/content/form.ftl
+172
-71
main.ftl
src/main/webapp/WEB-INF/manager/cms/content/main.ftl
+1
-0
tree.js
src/main/webapp/static/plugins/tree-select/tree.js
+3
-3
No files found.
src/main/webapp/WEB-INF/manager/cms/content/form.ftl
View file @
f1a1ee7e
...
@@ -5,12 +5,20 @@
...
@@ -5,12 +5,20 @@
<
#
include
"../../
include
/
head-file
.
ftl
"
>
<
#
include
"../../
include
/
head-file
.
ftl
"
>
</head>
</head>
<body>
<body>
<div
id=
"form"
v-cloak
>
<div
id=
"form"
v-cloak
>
<el-header
class=
"ms-header ms-tr"
height=
"50px"
>
<el-header
class=
"ms-header ms-tr"
height=
"50px"
>
<el-button
type=
"primary"
icon=
"iconfont icon-baocun"
size=
"mini"
@
click=
"save()"
:loading=
"saveDisabled"
>
保存
</el-button>
<el-button
type=
"primary"
icon=
"iconfont icon-baocun"
size=
"mini"
@
click=
"save()"
:loading=
"saveDisabled"
>
保存
<el-button
size=
"mini"
icon=
"iconfont icon-fanhui"
plain
onclick=
"javascript:history.go(-1)"
v-if=
"returnIsShow"
>
返回
</el-button>
</el-button>
<el-button
size=
"mini"
icon=
"iconfont icon-fanhui"
plain
onclick=
"javascript:history.go(-1)"
v-if=
"returnIsShow"
>
返回
</el-button>
</el-header>
</el-header>
<el-main
class=
"ms-container"
>
<el-main
class=
"ms-container"
>
<el-tabs
v-model=
"activeName"
style=
"height: calc(100% - 10px);"
>
<el-tab-pane
v-for=
"(item, index) in editableTabs"
:key=
"index"
:label=
"item.title"
:name=
"item.name"
>
<el-scrollbar
class=
"ms-scrollbar"
style=
"height: 100%;"
>
<el-scrollbar
class=
"ms-scrollbar"
style=
"height: 100%;"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
size=
"mini"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
size=
"mini"
>
<el-row
<el-row
...
@@ -30,6 +38,7 @@
...
@@ -30,6 +38,7 @@
<el-form-item
label=
"所属栏目"
prop=
"contentCategoryId"
>
<el-form-item
label=
"所属栏目"
prop=
"contentCategoryId"
>
<tree-select
:props=
"{value: 'id',label: 'categoryTitle',children: 'children'}"
<tree-select
:props=
"{value: 'id',label: 'categoryTitle',children: 'children'}"
:options=
"contentCategoryIdOptions"
:style=
"{width:'100%'}"
:options=
"contentCategoryIdOptions"
:style=
"{width:'100%'}"
@
change=
"categoryChange"
v-model=
"form.contentCategoryId"
></tree-select>
v-model=
"form.contentCategoryId"
></tree-select>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
...
@@ -45,7 +54,8 @@
...
@@ -45,7 +54,8 @@
:disabled=
"false"
:disabled=
"false"
:multiple=
"true"
:clearable=
"true"
:multiple=
"true"
:clearable=
"true"
placeholder=
"请选择文章类型"
>
placeholder=
"请选择文章类型"
>
<el-option
v-for=
'item in contentTypeOptions'
:key=
"item.dictValue"
:value=
"item.dictValue"
<el-option
v-for=
'item in contentTypeOptions'
:key=
"item.dictValue"
:value=
"item.dictValue"
:label=
"item.dictLabel"
></el-option>
:label=
"item.dictLabel"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -99,7 +109,8 @@
...
@@ -99,7 +109,8 @@
<el-col
span=
"12"
>
<el-col
span=
"12"
>
<el-form-item
label=
""
prop=
"contentDisplay"
>
<el-form-item
label=
""
prop=
"contentDisplay"
>
<template
slot=
'label'
>
是否显示
<template
slot=
'label'
>
是否显示
<el-popover
slot=
"label"
placement=
"top-start"
title=
"提示"
width=
"200"
trigger=
"hover"
content=
"选择否后前端将不显示,需要重新生成才有效果"
>
<el-popover
slot=
"label"
placement=
"top-start"
title=
"提示"
width=
"200"
trigger=
"hover"
content=
"选择否后前端将不显示,需要重新生成才有效果"
>
<i
class=
"el-icon-question"
slot=
"reference"
></i>
<i
class=
"el-icon-question"
slot=
"reference"
></i>
</el-popover>
</el-popover>
</template>
</template>
...
@@ -125,7 +136,8 @@
...
@@ -125,7 +136,8 @@
</el-row>
</el-row>
<el-form-item
label=
""
prop=
"contentImg"
>
<el-form-item
label=
""
prop=
"contentImg"
>
<template
slot=
'label'
>
文章缩略图
<template
slot=
'label'
>
文章缩略图
<el-popover
slot=
"label"
placement=
"top-start"
title=
"提示"
width=
"200"
trigger=
"hover"
content=
"文章缩略图,支持jpg格式"
>
<el-popover
slot=
"label"
placement=
"top-start"
title=
"提示"
width=
"200"
trigger=
"hover"
content=
"文章缩略图,支持jpg格式"
>
<i
class=
"el-icon-question"
slot=
"reference"
></i>
<i
class=
"el-icon-question"
slot=
"reference"
></i>
</el-popover>
</el-popover>
</template>
</template>
...
@@ -166,77 +178,95 @@
...
@@ -166,77 +178,95 @@
</el-input>
</el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"文章内容"
prop=
"contentDetails"
>
<el-form-item
label=
"文章内容"
prop=
"contentDetails"
>
<vue-ueditor-wrap
style=
"line-height: 0px"
v-model=
"form.contentDetails"
:config=
"editorConfig"
></vue-ueditor-wrap>
<vue-ueditor-wrap
style=
"line-height: 0px"
v-model=
"form.contentDetails"
:config=
"editorConfig"
></vue-ueditor-wrap>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
<div
:id=
"'model'+index"
v-else
></div>
</el-scrollbar>
</el-scrollbar>
</el-tab-pane>
</el-tabs>
</el-main>
</el-main>
</div>
</div>
</body>
</body>
</html>
</html>
<script>
<script>
var
form
=
new
Vue
({
var
form
=
new
Vue
({
el
:
'#form'
,
el
:
'#form'
,
data
()
{
data
()
{
return
{
return
{
date1574910623000_52656
:
null
,
saveDisabled
:
false
,
saveDisabled
:
false
,
editorConfig
:{
activeName
:
'form'
,
imageScaleEnabled
:
true
,
model
:
undefined
,
//自定义模型实例
editableTabs
:[{
title
:
'文章编辑'
,
name
:
'form'
}],
editorConfig
:
{
imageScaleEnabled
:
true
,
autoHeightEnabled
:
true
,
autoHeightEnabled
:
true
,
autoFloatEnabled
:
false
,
autoFloatEnabled
:
false
,
scaleEnabled
:
true
,
scaleEnabled
:
true
,
compressSide
:
0
,
compressSide
:
0
,
maxImageSideLength
:
1000
,
maxImageSideLength
:
1000
,
maximumWords
:
2000
,
maximumWords
:
2000
,
initialFrameWidth
:
'100%'
,
initialFrameWidth
:
'100%'
,
initialFrameHeight
:
400
,
initialFrameHeight
:
400
,
serverUrl
:
ms
.
base
+
"/static/plugins/ueditor/1.4.3.1/jsp/editor.do?jsonConfig=%7BvideoUrlPrefix:
\
'"
+
ms
.
base
+
"
\
',fileUrlPrefix:
\
'"
+
ms
.
base
+
"
\
',imageUrlPrefix:
\
'"
+
ms
.
base
+
"
\
',imagePathFormat:
\
'/upload/cms/content/editor/%7Btime%7D
\
',filePathFormat:
\
'/upload/cms/content/editor/%7Btime%7D
\
',videoPathFormat:
\
'/upload/cms/content/editor/%7Btime%7D
\
'%7D"
,
serverUrl
:
ms
.
base
+
"/static/plugins/ueditor/1.4.3.1/jsp/editor.do?jsonConfig=%7BvideoUrlPrefix:
\
'"
+
ms
.
base
+
"
\
',fileUrlPrefix:
\
'"
+
ms
.
base
+
"
\
',imageUrlPrefix:
\
'"
+
ms
.
base
+
"
\
',imagePathFormat:
\
'/upload/cms/content/editor/%7Btime%7D
\
',filePathFormat:
\
'/upload/cms/content/editor/%7Btime%7D
\
',videoPathFormat:
\
'/upload/cms/content/editor/%7Btime%7D
\
'%7D"
,
UEDITOR_HOME_URL
:
ms
.
base
+
'/static/plugins/ueditor/1.4.3.1/'
UEDITOR_HOME_URL
:
ms
.
base
+
'/static/plugins/ueditor/1.4.3.1/'
},
},
contentCategoryIdOptions
:[],
contentCategoryIdOptions
:
[],
returnIsShow
:
true
,
returnIsShow
:
true
,
//表单数据
//表单数据
form
:
{
form
:
{
// 文章标题
// 文章标题
contentTitle
:
''
,
contentTitle
:
''
,
// 所属栏目
// 所属栏目
contentCategoryId
:
''
,
contentCategoryId
:
''
,
// 文章类型
// 文章类型
contentType
:
[],
contentType
:
[],
// 是否显示
// 是否显示
contentDisplay
:
'0'
,
contentDisplay
:
'0'
,
// 文章作者
// 文章作者
contentAuthor
:
''
,
contentAuthor
:
''
,
// 文章来源
// 文章来源
contentSource
:
''
,
contentSource
:
''
,
// 自定义顺序
// 自定义顺序
contentSort
:
0
,
contentSort
:
0
,
// 文章缩略图
// 文章缩略图
contentImg
:
[],
contentImg
:
[],
// 描述
// 描述
contentDescription
:
''
,
contentDescription
:
''
,
// 关键字
// 关键字
contentKeyword
:
''
,
contentKeyword
:
''
,
// 文章内容
// 文章内容
contentDetails
:
''
,
contentDetails
:
''
,
},
},
contentTypeOptions
:[],
contentTypeOptions
:
[],
contentDisplayOptions
:
[{
"value"
:
"0"
,
"label"
:
"是"
},{
"value"
:
"1"
,
"label"
:
"否"
}],
contentDisplayOptions
:
[{
"value"
:
"0"
,
"label"
:
"是"
},
{
"value"
:
"1"
,
"label"
:
"否"
}],
rules
:{
rules
:
{
// 文章标题
// 文章标题
contentTitle
:
[{
"required"
:
true
,
"message"
:
"请选择文章标题"
}],
contentTitle
:
[{
"required"
:
true
,
"message"
:
"请选择文章标题"
}],
// 发布时间
// 发布时间
contentDatetime
:
[{
"required"
:
true
,
"message"
:
"发布时间不能为空"
}],
contentDatetime
:
[{
"required"
:
true
,
"message"
:
"发布时间不能为空"
}],
},
},
}
}
},
},
watch
:{
watch
:
{},
computed
:{
currCategory
(){
var
that
=
this
;
return
this
.
contentCategoryIdOptions
.
find
(
function
(
value
){
return
value
.
id
===
that
.
form
.
contentCategoryId
})
},
},
},
methods
:
{
methods
:
{
save
()
{
save
()
{
var
that
=
this
;
var
that
=
this
;
//自定义模型需要验证
if
(
this
.
model
&&!
this
.
model
.
validate
()){
this
.
activeName
=
'custom-name'
;
return
;
}
var
url
=
ms
.
manager
+
"/cms/content/save.do"
var
url
=
ms
.
manager
+
"/cms/content/save.do"
if
(
that
.
form
.
id
>
0
)
{
if
(
that
.
form
.
id
>
0
)
{
url
=
ms
.
manager
+
"/cms/content/update.do"
;
url
=
ms
.
manager
+
"/cms/content/update.do"
;
...
@@ -249,6 +279,11 @@
...
@@ -249,6 +279,11 @@
data
.
contentImg
=
JSON
.
stringify
(
data
.
contentImg
);
data
.
contentImg
=
JSON
.
stringify
(
data
.
contentImg
);
ms
.
http
.
post
(
url
,
data
).
then
(
function
(
data
)
{
ms
.
http
.
post
(
url
,
data
).
then
(
function
(
data
)
{
if
(
data
.
result
)
{
if
(
data
.
result
)
{
//保存时需要赋值关联ID
if
(
that
.
model
){
that
.
model
.
form
.
linkId
=
data
.
id
;
that
.
model
.
save
()
}
that
.
$notify
({
that
.
$notify
({
title
:
'成功'
,
title
:
'成功'
,
message
:
'保存成功'
,
message
:
'保存成功'
,
...
@@ -265,29 +300,92 @@
...
@@ -265,29 +300,92 @@
that
.
saveDisabled
=
false
;
that
.
saveDisabled
=
false
;
});
});
}
else
{
}
else
{
this
.
activeName
=
'form'
;
return
false
;
return
false
;
}
}
})
})
},
},
getValue
(
data
){
removeModel
(){
var
that
=
this
;
var
model
=
document
.
getElementById
(
'model1'
)
var
custom
=
document
.
getElementById
(
'c_model'
)
if
(
custom
){
model
.
removeChild
(
custom
)
}
that
.
model
=
undefined
;
},
categoryChange
(){
this
.
changeModel
();
},
changeModel
(){
var
that
=
this
;
that
.
editableTabs
=
[
that
.
editableTabs
[
0
]];
this
.
removeModel
();
if
(
this
.
currCategory
){
if
(
this
.
currCategory
.
categoryCmId
){
ms
.
http
.
get
(
ms
.
manager
+
"/mdiy/model/get.do"
,{
id
:
this
.
currCategory
.
categoryCmId
}).
then
(
function
(
data
)
{
if
(
data
.
id
){
that
.
rederModel
(
data
,
JSON
.
parse
(
data
.
modelJson
))
}
})
}
}
},
rederModel
(
modelEntity
,
data
){
var
that
=
this
;
that
.
editableTabs
.
push
({
title
:
modelEntity
.
modelName
,
name
:
'custom-name'
,
});
this
.
removeModel
();
that
.
$nextTick
(
function
()
{
var
div
=
document
.
createElement
(
'div'
)
div
.
id
=
'c_model'
var
model
=
document
.
getElementById
(
'model1'
)
model
.
appendChild
(
div
)
var
s
=
document
.
createElement
(
'script'
)
s
.
innerHTML
=
data
.
script
var
con
=
document
.
createElement
(
'div'
)
con
.
id
=
'custom-model'
;
con
.
innerHTML
=
data
.
html
;
div
.
appendChild
(
s
);
div
.
appendChild
(
con
);
//初始化自定义模型并传入关联参数
that
.
model
=
new
custom_model
(
{
data
:{
title
:
modelEntity
.
modelName
,
modelId
:
modelEntity
.
id
,
form
:{
linkId
:
that
.
id
},
}
})
})
},
getValue
(
data
)
{
this
.
form
.
contentCategoryId
=
data
.
id
;
this
.
form
.
contentCategoryId
=
data
.
id
;
},
},
//获取当前文章
//获取当前文章
get
(
id
)
{
get
(
id
)
{
var
that
=
this
;
var
that
=
this
;
ms
.
http
.
get
(
ms
.
manager
+
"/cms/content/get.do"
,
{
"id"
:
id
}).
then
(
function
(
res
)
{
ms
.
http
.
get
(
ms
.
manager
+
"/cms/content/get.do"
,
{
"id"
:
id
}).
then
(
function
(
res
)
{
if
(
res
.
result
&&
res
.
data
)
{
if
(
res
.
result
&&
res
.
data
)
{
if
(
res
.
data
.
contentType
)
{
if
(
res
.
data
.
contentType
)
{
res
.
data
.
contentType
=
res
.
data
.
contentType
.
split
(
','
);
res
.
data
.
contentType
=
res
.
data
.
contentType
.
split
(
','
);
}
}
if
(
res
.
data
.
contentImg
)
{
if
(
res
.
data
.
contentImg
)
{
res
.
data
.
contentImg
=
JSON
.
parse
(
res
.
data
.
contentImg
);
res
.
data
.
contentImg
=
JSON
.
parse
(
res
.
data
.
contentImg
);
res
.
data
.
contentImg
.
forEach
(
function
(
value
)
{
res
.
data
.
contentImg
.
forEach
(
function
(
value
)
{
value
.
url
=
ms
.
base
+
value
.
path
value
.
url
=
ms
.
base
+
value
.
path
})
})
}
else
{
}
else
{
res
.
data
.
contentImg
=
[]
res
.
data
.
contentImg
=
[]
}
}
that
.
changeModel
();
that
.
form
=
res
.
data
;
that
.
form
=
res
.
data
;
}
}
}).
catch
(
function
(
err
)
{
}).
catch
(
function
(
err
)
{
...
@@ -297,28 +395,28 @@
...
@@ -297,28 +395,28 @@
//获取contentCategoryId数据源
//获取contentCategoryId数据源
contentCategoryIdOptionsGet
()
{
contentCategoryIdOptionsGet
()
{
var
that
=
this
;
var
that
=
this
;
ms
.
http
.
get
(
ms
.
manager
+
"/cms/category/list.do"
,{
pageSize
:
9999
}).
then
(
function
(
res
)
{
ms
.
http
.
get
(
ms
.
manager
+
"/cms/category/list.do"
,
{
pageSize
:
9999
}).
then
(
function
(
res
)
{
if
(
res
.
result
)
{
if
(
res
.
result
)
{
that
.
contentCategoryIdOptions
=
ms
.
util
.
treeData
(
res
.
data
.
rows
,
'id'
,
'categoryId'
,
'children'
);
that
.
contentCategoryIdOptions
=
ms
.
util
.
treeData
(
res
.
data
.
rows
,
'id'
,
'categoryId'
,
'children'
);
}
}
}).
catch
(
function
(
err
)
{
}).
catch
(
function
(
err
)
{
console
.
log
(
err
);
console
.
log
(
err
);
});
});
},
},
//获取contentType数据源
//获取contentType数据源
contentTypeOptionsGet
()
{
contentTypeOptionsGet
()
{
var
that
=
this
;
var
that
=
this
;
ms
.
http
.
get
(
ms
.
base
+
'/mdiy/dict/list.do'
,
{
dictType
:
'文章属性'
,
pageSize
:
99999
}).
then
(
function
(
data
)
{
ms
.
http
.
get
(
ms
.
base
+
'/mdiy/dict/list.do'
,
{
dictType
:
'文章属性'
,
pageSize
:
99999
}).
then
(
function
(
data
)
{
that
.
contentTypeOptions
=
data
.
rows
;
that
.
contentTypeOptions
=
data
.
rows
;
}).
catch
(
function
(
err
)
{
}).
catch
(
function
(
err
)
{
console
.
log
(
err
);
console
.
log
(
err
);
});
});
},
},
//contentImg文件上传完成回调
//contentImg文件上传完成回调
contentImgSuccess
:
function
(
response
,
file
,
fileList
)
{
contentImgSuccess
:
function
(
response
,
file
,
fileList
)
{
this
.
form
.
contentImg
.
push
({
url
:
file
.
url
,
name
:
file
.
name
,
path
:
response
,
uid
:
file
.
uid
});
this
.
form
.
contentImg
.
push
({
url
:
file
.
url
,
name
:
file
.
name
,
path
:
response
,
uid
:
file
.
uid
});
},
},
contentImghandleRemove
:
function
(
file
,
files
)
{
contentImghandleRemove
:
function
(
file
,
files
)
{
var
index
=
-
1
;
var
index
=
-
1
;
index
=
this
.
form
.
contentImg
.
findIndex
(
text
=>
text
==
file
);
index
=
this
.
form
.
contentImg
.
findIndex
(
text
=>
text
==
file
);
if
(
index
!=
-
1
)
{
if
(
index
!=
-
1
)
{
...
@@ -326,14 +424,14 @@
...
@@ -326,14 +424,14 @@
}
}
},
},
//contentImg文件上传完成回调
//contentImg文件上传完成回调
contentImgSuccess
:
function
(
response
,
file
,
fileList
)
{
contentImgSuccess
:
function
(
response
,
file
,
fileList
)
{
this
.
form
.
contentImg
.
push
({
url
:
file
.
url
,
name
:
file
.
name
,
path
:
response
,
uid
:
file
.
uid
});
this
.
form
.
contentImg
.
push
({
url
:
file
.
url
,
name
:
file
.
name
,
path
:
response
,
uid
:
file
.
uid
});
},
},
//上传超过限制
//上传超过限制
contentImghandleExceed
:
function
(
files
,
fileList
)
{
contentImghandleExceed
:
function
(
files
,
fileList
)
{
this
.
$notify
({
title
:
'当前最多上传1个文件'
,
type
:
'warning'
});
this
.
$notify
({
title
:
'当前最多上传1个文件'
,
type
:
'warning'
});
},
},
contentImghandleRemove
:
function
(
file
,
files
)
{
contentImghandleRemove
:
function
(
file
,
files
)
{
var
index
=
-
1
;
var
index
=
-
1
;
index
=
this
.
form
.
contentImg
.
findIndex
(
text
=>
text
==
file
);
index
=
this
.
form
.
contentImg
.
findIndex
(
text
=>
text
==
file
);
if
(
index
!=
-
1
)
{
if
(
index
!=
-
1
)
{
...
@@ -341,26 +439,26 @@
...
@@ -341,26 +439,26 @@
}
}
},
},
//查询列表
//查询列表
list
:
function
(
contentCategoryId
)
{
list
:
function
(
contentCategoryId
)
{
var
that
=
this
;
var
that
=
this
;
ms
.
http
.
post
(
ms
.
manager
+
"/cms/content/list.do"
,
{
ms
.
http
.
post
(
ms
.
manager
+
"/cms/content/list.do"
,
{
contentCategoryId
:
contentCategoryId
,
contentCategoryId
:
contentCategoryId
,
}).
then
(
function
(
res
)
{
}).
then
(
function
(
res
)
{
if
(
res
.
result
&&
res
.
data
.
total
>
0
)
{
if
(
res
.
result
&&
res
.
data
.
total
>
0
)
{
if
(
res
.
data
.
rows
[
0
].
contentType
)
{
if
(
res
.
data
.
rows
[
0
].
contentType
)
{
res
.
data
.
rows
[
0
].
contentType
=
res
.
data
.
rows
[
0
].
contentType
.
split
(
','
);
res
.
data
.
rows
[
0
].
contentType
=
res
.
data
.
rows
[
0
].
contentType
.
split
(
','
);
}
}
if
(
res
.
data
.
rows
[
0
].
contentImg
)
{
if
(
res
.
data
.
rows
[
0
].
contentImg
)
{
res
.
data
.
rows
[
0
].
contentImg
=
JSON
.
parse
(
res
.
data
.
rows
[
0
].
contentImg
);
res
.
data
.
rows
[
0
].
contentImg
=
JSON
.
parse
(
res
.
data
.
rows
[
0
].
contentImg
);
res
.
data
.
rows
[
0
].
contentImg
.
forEach
(
function
(
value
)
{
res
.
data
.
rows
[
0
].
contentImg
.
forEach
(
function
(
value
)
{
value
.
url
=
ms
.
base
+
value
.
path
value
.
url
=
ms
.
base
+
value
.
path
})
})
}
else
{
}
else
{
res
.
data
.
rows
[
0
].
contentImg
=
[]
res
.
data
.
rows
[
0
].
contentImg
=
[]
}
}
that
.
form
=
res
.
data
.
rows
[
0
];
that
.
form
=
res
.
data
.
rows
[
0
];
}
}
}).
catch
(
function
(
err
)
{
}).
catch
(
function
(
err
)
{
console
.
log
(
err
);
console
.
log
(
err
);
});
});
},
},
...
@@ -373,7 +471,7 @@
...
@@ -373,7 +471,7 @@
if
(
this
.
form
.
id
)
{
if
(
this
.
form
.
id
)
{
this
.
get
(
this
.
form
.
id
);
this
.
get
(
this
.
form
.
id
);
}
}
if
(
this
.
form
.
contentCategoryId
)
{
if
(
this
.
form
.
contentCategoryId
)
{
this
.
list
(
this
.
form
.
contentCategoryId
);
this
.
list
(
this
.
form
.
contentCategoryId
);
this
.
returnIsShow
=
false
;
this
.
returnIsShow
=
false
;
}
}
...
@@ -381,13 +479,15 @@
...
@@ -381,13 +479,15 @@
});
});
</script>
</script>
<style>
<style>
.el-select
{
.el-select
{
width
:
100%
;
width
:
100%
;
}
}
body
{
body
{
overflow
:
hidden
;
overflow
:
hidden
;
}
}
#form
{
#form
{
overflow
:
hidden
;
overflow
:
hidden
;
}
}
</style>
</style>
\ No newline at end of file
src/main/webapp/WEB-INF/manager/cms/content/main.ftl
View file @
f1a1ee7e
...
@@ -180,6 +180,7 @@
...
@@ -180,6 +180,7 @@
if
(
!
res
.
result
||
res
.
data
.
total
<=
0
)
{
if
(
!
res
.
result
||
res
.
data
.
total
<=
0
)
{
that
.
emptyText
=
'暂无数据'
that
.
emptyText
=
'暂无数据'
that
.
dataList
=
[];
that
.
dataList
=
[];
that
.
total
=
0
;
}
else
{
}
else
{
that
.
emptyText
=
''
;
that
.
emptyText
=
''
;
that
.
total
=
res
.
data
.
total
;
that
.
total
=
res
.
data
.
total
;
...
...
src/main/webapp/static/plugins/tree-select/tree.js
View file @
f1a1ee7e
!
function
(
e
,
t
){
"object"
==
typeof
exports
&&
"object"
==
typeof
module
?
module
.
exports
=
t
():
"function"
==
typeof
define
&&
define
.
amd
?
define
([],
t
):
"object"
==
typeof
exports
?
exports
.
treeSelect
=
t
():
e
.
treeSelect
=
t
()}(
"undefined"
!=
typeof
self
?
self
:
this
,
function
(){
return
function
(
e
){
var
t
=
{};
function
n
(
r
){
if
(
t
[
r
])
return
t
[
r
].
exports
;
var
o
=
t
[
r
]
=
{
i
:
r
,
l
:
!
1
,
exports
:{}};
return
e
[
r
].
call
(
o
.
exports
,
o
,
o
.
exports
,
n
),
o
.
l
=!
0
,
o
.
exports
}
return
n
.
m
=
e
,
n
.
c
=
t
,
n
.
d
=
function
(
e
,
t
,
r
){
n
.
o
(
e
,
t
)
||
Object
.
defineProperty
(
e
,
t
,{
configurable
:
!
1
,
enumerable
:
!
0
,
get
:
r
})},
n
.
n
=
function
(
e
){
var
t
=
e
&&
e
.
__esModule
?
function
(){
return
e
.
default
}:
function
(){
return
e
};
return
n
.
d
(
t
,
"a"
,
t
),
t
},
n
.
o
=
function
(
e
,
t
){
return
Object
.
prototype
.
hasOwnProperty
.
call
(
e
,
t
)},
n
.
p
=
""
,
n
(
n
.
s
=
1
)}([
function
(
e
,
t
,
n
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
}),
t
.
default
=
{
template
:
"#tree-select"
,
name
:
"el-tree-select"
,
props
:{
props
:{
type
:
Object
,
default
:
function
(){
return
{
value
:
"id"
,
label
:
"title"
,
children
:
"children"
}}},
options
:{
type
:
Array
,
default
:
function
(){
return
[]}},
value
:{
default
:
function
(){
return
""
}},
clearable
:{
type
:
Boolean
,
default
:
function
(){
return
!
0
}},
accordion
:{
type
:
Boolean
,
default
:
function
(){
return
!
1
}}},
data
:
function
(){
return
{
valueId
:
this
.
value
,
valueTitle
:
""
,
defaultExpandedKey
:[]}},
mounted
:
function
(){
this
.
initHandle
()},
methods
:{
initHandle
:
function
(){
this
.
valueId
&&
(
this
.
valueTitle
=
this
.
$refs
.
selectTree
.
getCurrentNode
()[
this
.
props
.
label
],
this
.
$refs
.
selectTree
.
setCurrentKey
(
this
.
valueId
),
this
.
defaultExpandedKey
=
[
this
.
valueId
]),
this
.
initScroll
()},
initScroll
:
function
(){
this
.
$nextTick
(
function
(){
var
e
=
document
.
querySelectorAll
(
".el-scrollbar .el-select-dropdown__wrap"
)[
0
],
t
=
document
.
querySelectorAll
(
".el-scrollbar .el-scrollbar__bar"
);
e
.
style
.
cssText
=
"margin: 0px; max-height: none; overflow: hidden;"
,
t
.
forEach
(
function
(
e
){
return
e
.
style
.
width
=
0
})})},
handleNodeClick
:
function
(
e
){
this
.
$emit
(
"input"
,
e
.
id
),
this
.
$emit
(
"get-value"
,
e
),
this
.
defaultExpandedKey
=
[]},
clearHandle
:
function
(){
this
.
valueTitle
=
""
,
this
.
valueId
=
""
,
this
.
defaultExpandedKey
=
[],
this
.
clearSelected
(),
this
.
$emit
(
"input"
,
""
)},
clearSelected
:
function
(){
document
.
querySelectorAll
(
"#tree-option .el-tree-node"
).
forEach
(
function
(
e
){
return
e
.
classList
.
remove
(
"is-current"
)})}},
watch
:{
value
:
function
(){
this
.
valueId
=
this
.
value
,
0
==
this
.
value
&&
(
this
.
valueTitle
=
"顶级菜单"
),
this
.
initHandle
()}}}},
function
(
e
,
t
,
n
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
});
var
r
=
n
(
0
),
o
=
n
.
n
(
r
);
for
(
var
i
in
r
)
"default"
!==
i
&&
function
(
e
){
n
.
d
(
t
,
e
,
function
(){
return
r
[
e
]})}(
i
);
var
a
=
n
(
8
),
l
=!
1
;
var
s
=
function
(
e
){
l
||
n
(
2
)},
u
=
n
(
7
)(
o
.
a
,
a
.
a
,
!
1
,
s
,
"data-v-57dc3c0c"
,
null
);
u
.
options
.
__file
=
"src/components/vue-ueditor-wrap.vue"
,
t
.
default
=
u
.
exports
},
function
(
e
,
t
,
n
){
var
r
=
n
(
3
);
"string"
==
typeof
r
&&
(
r
=
[[
e
.
i
,
r
,
""
]]),
r
.
locals
&&
(
e
.
exports
=
r
.
locals
);
n
(
5
)(
"47387ba6"
,
r
,
!
1
,{})},
function
(
e
,
t
,
n
){(
e
.
exports
=
n
(
4
)(
void
0
)).
push
([
e
.
i
,
"
\n
.el-scrollbar .el-scrollbar__view .el-select-dropdown__item[data-v-57dc3c0c]{
\
r
\n
height: auto;
\
r
\n
max-height: 274px;
\
r
\n
padding: 0;
\
r
\n
overflow: hidden;
\
r
\n
overflow-y: auto;
\n
}
\n
.el-select-dropdown__item.selected[data-v-57dc3c0c]{
\
r
\n
font-weight: normal;
\n
}
\n
ul li[data-v-57dc3c0c] .el-tree .el-tree-node__content{
\
r
\n
height:auto;
\
r
\n
padding: 0 20px;
\n
}
\n
.el-tree-node__label[data-v-57dc3c0c]{
\
r
\n
font-weight: normal;
\n
}
\n
.el-tree[data-v-57dc3c0c] .is-current .el-tree-node__label{
\
r
\n
color: #409EFF;
\
r
\n
font-weight: 700;
\n
}
\n
.el-tree[data-v-57dc3c0c] .is-current .el-tree-node__children .el-tree-node__label{
\
r
\n
color:#606266;
\
r
\n
font-weight: normal;
\n
}
\
r
\n
"
,
""
])},
function
(
e
,
t
){
e
.
exports
=
function
(
e
){
var
t
=
[];
return
t
.
toString
=
function
(){
return
this
.
map
(
function
(
t
){
var
n
=
function
(
e
,
t
){
var
n
=
e
[
1
]
||
""
,
r
=
e
[
3
];
if
(
!
r
)
return
n
;
if
(
t
){
var
o
=
(
a
=
r
,
"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"
+
new
Buffer
(
JSON
.
stringify
(
a
)).
toString
(
"base64"
)
+
" */"
),
i
=
r
.
sources
.
map
(
function
(
e
){
return
"/*# sourceURL="
+
r
.
sourceRoot
+
e
+
" */"
});
return
[
n
].
concat
(
i
).
concat
([
o
]).
join
(
"
\n
"
)}
var
a
;
return
[
n
].
join
(
"
\n
"
)}(
t
,
e
);
return
t
[
2
]?
"@media "
+
t
[
2
]
+
"{"
+
n
+
"}"
:
n
}).
join
(
""
)},
t
.
i
=
function
(
e
,
n
){
"string"
==
typeof
e
&&
(
e
=
[[
null
,
e
,
""
]]);
for
(
var
r
=
{},
o
=
0
;
o
<
this
.
length
;
o
++
){
var
i
=
this
[
o
][
0
];
"number"
==
typeof
i
&&
(
r
[
i
]
=!
0
)}
for
(
o
=
0
;
o
<
e
.
length
;
o
++
){
var
a
=
e
[
o
];
"number"
==
typeof
a
[
0
]
&&
r
[
a
[
0
]]
||
(
n
&&!
a
[
2
]?
a
[
2
]
=
n
:
n
&&
(
a
[
2
]
=
"("
+
a
[
2
]
+
") and ("
+
n
+
")"
),
t
.
push
(
a
))}},
t
}},
function
(
e
,
t
,
n
){
var
r
=
"undefined"
!=
typeof
document
;
if
(
"undefined"
!=
typeof
DEBUG
&&
DEBUG
&&!
r
)
throw
new
Error
(
"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment."
);
var
o
=
n
(
6
),
i
=
{},
a
=
r
&&
(
document
.
head
||
document
.
getElementsByTagName
(
"head"
)[
0
]),
l
=
null
,
s
=
0
,
u
=!
1
,
c
=
function
(){},
d
=
null
,
f
=
"data-vue-ssr-id"
,
p
=
"undefined"
!=
typeof
navigator
&&
/msie
[
6-9
]\b
/
.
test
(
navigator
.
userAgent
.
toLowerCase
());
function
h
(
e
){
for
(
var
t
=
0
;
t
<
e
.
length
;
t
++
){
var
n
=
e
[
t
],
r
=
i
[
n
.
id
];
if
(
r
){
r
.
refs
++
;
for
(
var
o
=
0
;
o
<
r
.
parts
.
length
;
o
++
)
r
.
parts
[
o
](
n
.
parts
[
o
]);
for
(;
o
<
n
.
parts
.
length
;
o
++
)
r
.
parts
.
push
(
m
(
n
.
parts
[
o
]));
r
.
parts
.
length
>
n
.
parts
.
length
&&
(
r
.
parts
.
length
=
n
.
parts
.
length
)}
else
{
var
a
=
[];
for
(
o
=
0
;
o
<
n
.
parts
.
length
;
o
++
)
a
.
push
(
m
(
n
.
parts
[
o
]));
i
[
n
.
id
]
=
{
id
:
n
.
id
,
refs
:
1
,
parts
:
a
}}}}
function
v
(){
var
e
=
document
.
createElement
(
"style"
);
return
e
.
type
=
"text/css"
,
a
.
appendChild
(
e
),
e
}
function
m
(
e
){
var
t
,
n
,
r
=
document
.
querySelector
(
"style["
+
f
+
'~="'
+
e
.
id
+
'"]'
);
if
(
r
){
if
(
u
)
return
c
;
r
.
parentNode
.
removeChild
(
r
)}
if
(
p
){
var
o
=
s
++
;
r
=
l
||
(
l
=
v
()),
t
=
_
.
bind
(
null
,
r
,
o
,
!
1
),
n
=
_
.
bind
(
null
,
r
,
o
,
!
0
)}
else
r
=
v
(),
t
=
function
(
e
,
t
){
var
n
=
t
.
css
,
r
=
t
.
media
,
o
=
t
.
sourceMap
;
r
&&
e
.
setAttribute
(
"media"
,
r
);
d
.
ssrId
&&
e
.
setAttribute
(
f
,
t
.
id
);
o
&&
(
n
+=
"
\n
/*# sourceURL="
+
o
.
sources
[
0
]
+
" */"
,
n
+=
"
\n
/*# sourceMappingURL=data:application/json;base64,"
+
btoa
(
unescape
(
encodeURIComponent
(
JSON
.
stringify
(
o
))))
+
" */"
);
if
(
e
.
styleSheet
)
e
.
styleSheet
.
cssText
=
n
;
else
{
for
(;
e
.
firstChild
;)
e
.
removeChild
(
e
.
firstChild
);
e
.
appendChild
(
document
.
createTextNode
(
n
))}}.
bind
(
null
,
r
),
n
=
function
(){
r
.
parentNode
.
removeChild
(
r
)};
return
t
(
e
),
function
(
r
){
if
(
r
){
if
(
r
.
css
===
e
.
css
&&
r
.
media
===
e
.
media
&&
r
.
sourceMap
===
e
.
sourceMap
)
return
;
t
(
e
=
r
)}
else
n
()}}
e
.
exports
=
function
(
e
,
t
,
n
,
r
){
u
=
n
,
d
=
r
||
{};
var
a
=
o
(
e
,
t
);
return
h
(
a
),
function
(
t
){
for
(
var
n
=
[],
r
=
0
;
r
<
a
.
length
;
r
++
){
var
l
=
a
[
r
];(
s
=
i
[
l
.
id
]).
refs
--
,
n
.
push
(
s
)}
t
?
h
(
a
=
o
(
e
,
t
)):
a
=
[];
for
(
r
=
0
;
r
<
n
.
length
;
r
++
){
var
s
;
if
(
0
===
(
s
=
n
[
r
]).
refs
){
for
(
var
u
=
0
;
u
<
s
.
parts
.
length
;
u
++
)
s
.
parts
[
u
]();
delete
i
[
s
.
id
]}}}};
var
y
,
g
=
(
y
=
[],
function
(
e
,
t
){
return
y
[
e
]
=
t
,
y
.
filter
(
Boolean
).
join
(
"
\n
"
)});
function
_
(
e
,
t
,
n
,
r
){
var
o
=
n
?
""
:
r
.
css
;
if
(
e
.
styleSheet
)
e
.
styleSheet
.
cssText
=
g
(
t
,
o
);
else
{
var
i
=
document
.
createTextNode
(
o
),
a
=
e
.
childNodes
;
a
[
t
]
&&
e
.
removeChild
(
a
[
t
]),
a
.
length
?
e
.
insertBefore
(
i
,
a
[
t
]):
e
.
appendChild
(
i
)}}},
function
(
e
,
t
){
e
.
exports
=
function
(
e
,
t
){
for
(
var
n
=
[],
r
=
{},
o
=
0
;
o
<
t
.
length
;
o
++
){
var
i
=
t
[
o
],
a
=
i
[
0
],
l
=
{
id
:
e
+
":"
+
o
,
css
:
i
[
1
],
media
:
i
[
2
],
sourceMap
:
i
[
3
]};
r
[
a
]?
r
[
a
].
parts
.
push
(
l
):
n
.
push
(
r
[
a
]
=
{
id
:
a
,
parts
:[
l
]})}
return
n
}},
function
(
e
,
t
){
e
.
exports
=
function
(
e
,
t
,
n
,
r
,
o
,
i
){
var
a
,
l
=
e
=
e
||
{},
s
=
typeof
e
.
default
;
"object"
!==
s
&&
"function"
!==
s
||
(
a
=
e
,
l
=
e
.
default
);
var
u
,
c
=
"function"
==
typeof
l
?
l
.
options
:
l
;
if
(
t
&&
(
c
.
render
=
t
.
render
,
c
.
staticRenderFns
=
t
.
staticRenderFns
,
c
.
_compiled
=!
0
),
n
&&
(
c
.
functional
=!
0
),
o
&&
(
c
.
_scopeId
=
o
),
i
?(
u
=
function
(
e
){(
e
=
e
||
this
.
$vnode
&&
this
.
$vnode
.
ssrContext
||
this
.
parent
&&
this
.
parent
.
$vnode
&&
this
.
parent
.
$vnode
.
ssrContext
)
||
"undefined"
==
typeof
__VUE_SSR_CONTEXT__
||
(
e
=
__VUE_SSR_CONTEXT__
),
r
&&
r
.
call
(
this
,
e
),
e
&&
e
.
_registeredComponents
&&
e
.
_registeredComponents
.
add
(
i
)},
c
.
_ssrRegister
=
u
):
r
&&
(
u
=
r
),
u
){
var
d
=
c
.
functional
,
f
=
d
?
c
.
render
:
c
.
beforeCreate
;
d
?(
c
.
_injectStyles
=
u
,
c
.
render
=
function
(
e
,
t
){
return
u
.
call
(
t
),
f
(
e
,
t
)}):
c
.
beforeCreate
=
f
?[].
concat
(
f
,
u
):[
u
]}
return
{
esModule
:
a
,
exports
:
l
,
options
:
c
}}},
function
(
e
,
t
,
n
){
"use strict"
;
var
r
=
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
n
=
e
.
_self
.
_c
||
t
;
return
n
(
"div"
,{
attrs
:{
id
:
"selecttree"
}},[
n
(
"el-select"
,{
attrs
:{
value
:
e
.
valueTitle
,
clearable
:
e
.
clearable
},
on
:{
clear
:
e
.
clearHandle
}},[
n
(
"el-option"
,{
staticClass
:
"options"
,
attrs
:{
value
:
e
.
valueTitle
,
label
:
e
.
valueTitle
}},[
n
(
"el-tree"
,{
ref
:
"selectTree"
,
attrs
:{
id
:
"tree-option"
,
"default-expand-all"
:
""
,
"expand-on-click-node"
:
!
1
,
accordion
:
e
.
accordion
,
data
:
e
.
options
,
props
:
e
.
props
,
"node-key"
:
e
.
props
.
value
,
"default-expanded-keys"
:
e
.
defaultExpandedKey
},
on
:{
"node-click"
:
function
(
t
){
return
t
.
target
!==
t
.
currentTarget
?
null
:
e
.
handleNodeClick
(
t
)}}})],
1
)],
1
)],
1
)};
r
.
_withStripped
=!
0
;
var
o
=
{
render
:
r
,
staticRenderFns
:[]};
t
.
a
=
o
}]).
default
});
!
function
(
e
,
t
){
"object"
==
typeof
exports
&&
"object"
==
typeof
module
?
module
.
exports
=
t
():
"function"
==
typeof
define
&&
define
.
amd
?
define
([],
t
):
"object"
==
typeof
exports
?
exports
.
treeSelect
=
t
():
e
.
treeSelect
=
t
()}(
"undefined"
!=
typeof
self
?
self
:
this
,
function
(){
return
function
(
e
){
var
t
=
{};
function
n
(
r
){
if
(
t
[
r
])
return
t
[
r
].
exports
;
var
o
=
t
[
r
]
=
{
i
:
r
,
l
:
!
1
,
exports
:{}};
return
e
[
r
].
call
(
o
.
exports
,
o
,
o
.
exports
,
n
),
o
.
l
=!
0
,
o
.
exports
}
return
n
.
m
=
e
,
n
.
c
=
t
,
n
.
d
=
function
(
e
,
t
,
r
){
n
.
o
(
e
,
t
)
||
Object
.
defineProperty
(
e
,
t
,{
configurable
:
!
1
,
enumerable
:
!
0
,
get
:
r
})},
n
.
n
=
function
(
e
){
var
t
=
e
&&
e
.
__esModule
?
function
(){
return
e
.
default
}:
function
(){
return
e
};
return
n
.
d
(
t
,
"a"
,
t
),
t
},
n
.
o
=
function
(
e
,
t
){
return
Object
.
prototype
.
hasOwnProperty
.
call
(
e
,
t
)},
n
.
p
=
""
,
n
(
n
.
s
=
7
)}([
function
(
e
,
t
,
n
){
e
.
exports
=!
n
(
6
)(
function
(){
return
7
!=
Object
.
defineProperty
({},
"a"
,{
get
:
function
(){
return
7
}}).
a
})},
function
(
e
,
t
){
e
.
exports
=
function
(
e
){
return
"object"
==
typeof
e
?
null
!==
e
:
"function"
==
typeof
e
}},
function
(
e
,
t
,
n
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
});
var
r
,
o
=
n
(
14
),
i
=
(
r
=
o
)
&&
r
.
__esModule
?
r
:{
default
:
r
};
t
.
default
=
(
0
,
i
.
default
)({
template
:
"#tree-select"
,
name
:
"el-tree-select"
,
props
:{
props
:{
type
:
Object
,
default
:
function
(){
return
{
value
:
"id"
,
label
:
"title"
,
children
:
"children"
}}},
options
:{
type
:
Array
,
default
:
function
(){
return
[]}},
value
:{
type
:
Number
,
default
:
function
(){
return
null
}},
clearable
:{
type
:
Boolean
,
default
:
function
(){
return
!
0
}},
accordion
:{
type
:
Boolean
,
default
:
function
(){
return
!
1
}}},
watch
:{
value
:
function
(
e
,
t
){
if
(
this
.
valueId
=
e
,
this
.
valueId
){
if
(
!
this
.
$refs
.
selectTree
.
getNode
(
this
.
valueId
))
return
;
this
.
valueTitle
=
this
.
$refs
.
selectTree
.
getNode
(
this
.
valueId
).
data
[
this
.
props
.
label
],
this
.
$refs
.
selectTree
.
setCurrentKey
(
this
.
valueId
),
this
.
defaultExpandedKey
=
[
this
.
valueId
]}
this
.
initScroll
()}},
data
:
function
(){
return
{
valueId
:
this
.
value
,
valueTitle
:
""
,
defaultExpandedKey
:[]}},
mounted
:
function
(){
this
.
initHandle
()},
methods
:{
initHandle
:
function
(){
if
(
this
.
valueId
){
if
(
!
this
.
$refs
.
selectTree
.
getNode
(
this
.
valueId
))
return
;
this
.
valueTitle
=
this
.
$refs
.
selectTree
.
getNode
(
this
.
valueId
).
data
[
this
.
props
.
label
],
this
.
$refs
.
selectTree
.
setCurrentKey
(
this
.
valueId
),
this
.
defaultExpandedKey
=
[
this
.
valueId
]}
this
.
initScroll
()},
initScroll
:
function
(){
this
.
$nextTick
(
function
(){
var
e
=
document
.
querySelectorAll
(
".el-scrollbar .el-select-dropdown__wrap"
)[
0
],
t
=
document
.
querySelectorAll
(
".el-scrollbar .el-scrollbar__bar"
);
e
.
style
.
cssText
=
"margin: 0px; max-height: none; overflow: hidden;"
,
t
.
forEach
(
function
(
e
){
return
e
.
style
.
width
=
0
})})},
handleNodeClick
:
function
(
e
){
this
.
$emit
(
"input"
,
e
[
this
.
props
.
value
]),
this
.
$emit
(
"change"
,{
node
:
e
,
dom
:
this
.
$refs
.
tsSselect
}),
this
.
$refs
.
tsSselect
.
blur
(),
this
.
defaultExpandedKey
=
[]},
clearHandle
:
function
(){
this
.
valueTitle
=
""
,
this
.
valueId
=
null
,
this
.
defaultExpandedKey
=
[],
this
.
clearSelected
(),
this
.
$emit
(
"change"
,
null
)},
clearSelected
:
function
(){
document
.
querySelectorAll
(
"#tree-option .el-tree-node"
).
forEach
(
function
(
e
){
return
e
.
classList
.
remove
(
"is-current"
)})}}},
"watch"
,{
value
:
function
(){
this
.
valueId
=
this
.
value
,
0
===
this
.
value
&&
(
this
.
valueTitle
=
"顶级菜单"
),
this
.
initHandle
()}})},
function
(
e
,
t
){
var
n
=
e
.
exports
=
"undefined"
!=
typeof
window
&&
window
.
Math
==
Math
?
window
:
"undefined"
!=
typeof
self
&&
self
.
Math
==
Math
?
self
:
Function
(
"return this"
)();
"number"
==
typeof
__g
&&
(
__g
=
n
)},
function
(
e
,
t
){
var
n
=
e
.
exports
=
{
version
:
"2.5.7"
};
"number"
==
typeof
__e
&&
(
__e
=
n
)},
function
(
e
,
t
,
n
){
var
r
=
n
(
22
),
o
=
n
(
23
),
i
=
n
(
25
),
a
=
Object
.
defineProperty
;
t
.
f
=
n
(
0
)?
Object
.
defineProperty
:
function
(
e
,
t
,
n
){
if
(
r
(
e
),
t
=
i
(
t
,
!
0
),
r
(
n
),
o
)
try
{
return
a
(
e
,
t
,
n
)}
catch
(
e
){}
if
(
"get"
in
n
||
"set"
in
n
)
throw
TypeError
(
"Accessors not supported!"
);
return
"value"
in
n
&&
(
e
[
t
]
=
n
.
value
),
e
}},
function
(
e
,
t
){
e
.
exports
=
function
(
e
){
try
{
return
!!
e
()}
catch
(
e
){
return
!
0
}}},
function
(
e
,
t
,
n
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
});
var
r
=
n
(
2
),
o
=
n
.
n
(
r
);
for
(
var
i
in
r
)
"default"
!==
i
&&
function
(
e
){
n
.
d
(
t
,
e
,
function
(){
return
r
[
e
]})}(
i
);
var
a
=
n
(
28
),
u
=!
1
;
var
l
=
function
(
e
){
u
||
n
(
8
)},
s
=
n
(
13
)(
o
.
a
,
a
.
a
,
!
1
,
l
,
"data-v-24dbbcae"
,
null
);
s
.
options
.
__file
=
"src/components/tree.vue"
,
t
.
default
=
s
.
exports
},
function
(
e
,
t
,
n
){
var
r
=
n
(
9
);
"string"
==
typeof
r
&&
(
r
=
[[
e
.
i
,
r
,
""
]]),
r
.
locals
&&
(
e
.
exports
=
r
.
locals
);
n
(
11
)(
"682353eb"
,
r
,
!
1
,{})},
function
(
e
,
t
,
n
){(
e
.
exports
=
n
(
10
)(
void
0
)).
push
([
e
.
i
,
"
\n
.el-scrollbar .el-scrollbar__view .el-select-dropdown__item[data-v-24dbbcae] {
\
r
\n
height: auto;
\
r
\n
max-height: 274px;
\
r
\n
padding: 0;
\
r
\n
overflow: hidden;
\
r
\n
overflow-y: auto;
\n
}
\n
.el-select-dropdown__item.selected[data-v-24dbbcae] {
\
r
\n
font-weight: normal;
\n
}
\n
ul li[data-v-24dbbcae] .el-tree .el-tree-node__content {
\
r
\n
height: auto;
\
r
\n
padding: 0 20px;
\n
}
\n
.el-tree-node__label[data-v-24dbbcae] {
\
r
\n
font-weight: normal;
\n
}
\n
.el-tree[data-v-24dbbcae] .is-current .el-tree-node__label {
\
r
\n
color: #409eff;
\
r
\n
font-weight: 700;
\n
}
\n
.el-tree[data-v-24dbbcae] .is-current .el-tree-node__children .el-tree-node__label {
\
r
\n
color: #606266;
\
r
\n
font-weight: normal;
\n
}
\
r
\n
"
,
""
])},
function
(
e
,
t
){
e
.
exports
=
function
(
e
){
var
t
=
[];
return
t
.
toString
=
function
(){
return
this
.
map
(
function
(
t
){
var
n
=
function
(
e
,
t
){
var
n
=
e
[
1
]
||
""
,
r
=
e
[
3
];
if
(
!
r
)
return
n
;
if
(
t
){
var
o
=
(
a
=
r
,
"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"
+
new
Buffer
(
JSON
.
stringify
(
a
)).
toString
(
"base64"
)
+
" */"
),
i
=
r
.
sources
.
map
(
function
(
e
){
return
"/*# sourceURL="
+
r
.
sourceRoot
+
e
+
" */"
});
return
[
n
].
concat
(
i
).
concat
([
o
]).
join
(
"
\n
"
)}
var
a
;
return
[
n
].
join
(
"
\n
"
)}(
t
,
e
);
return
t
[
2
]?
"@media "
+
t
[
2
]
+
"{"
+
n
+
"}"
:
n
}).
join
(
""
)},
t
.
i
=
function
(
e
,
n
){
"string"
==
typeof
e
&&
(
e
=
[[
null
,
e
,
""
]]);
for
(
var
r
=
{},
o
=
0
;
o
<
this
.
length
;
o
++
){
var
i
=
this
[
o
][
0
];
"number"
==
typeof
i
&&
(
r
[
i
]
=!
0
)}
for
(
o
=
0
;
o
<
e
.
length
;
o
++
){
var
a
=
e
[
o
];
"number"
==
typeof
a
[
0
]
&&
r
[
a
[
0
]]
||
(
n
&&!
a
[
2
]?
a
[
2
]
=
n
:
n
&&
(
a
[
2
]
=
"("
+
a
[
2
]
+
") and ("
+
n
+
")"
),
t
.
push
(
a
))}},
t
}},
function
(
e
,
t
,
n
){
var
r
=
"undefined"
!=
typeof
document
;
if
(
"undefined"
!=
typeof
DEBUG
&&
DEBUG
&&!
r
)
throw
new
Error
(
"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment."
);
var
o
=
n
(
12
),
i
=
{},
a
=
r
&&
(
document
.
head
||
document
.
getElementsByTagName
(
"head"
)[
0
]),
u
=
null
,
l
=
0
,
s
=!
1
,
c
=
function
(){},
f
=
null
,
d
=
"data-vue-ssr-id"
,
p
=
"undefined"
!=
typeof
navigator
&&
/msie
[
6-9
]\b
/
.
test
(
navigator
.
userAgent
.
toLowerCase
());
function
h
(
e
){
for
(
var
t
=
0
;
t
<
e
.
length
;
t
++
){
var
n
=
e
[
t
],
r
=
i
[
n
.
id
];
if
(
r
){
r
.
refs
++
;
for
(
var
o
=
0
;
o
<
r
.
parts
.
length
;
o
++
)
r
.
parts
[
o
](
n
.
parts
[
o
]);
for
(;
o
<
n
.
parts
.
length
;
o
++
)
r
.
parts
.
push
(
y
(
n
.
parts
[
o
]));
r
.
parts
.
length
>
n
.
parts
.
length
&&
(
r
.
parts
.
length
=
n
.
parts
.
length
)}
else
{
var
a
=
[];
for
(
o
=
0
;
o
<
n
.
parts
.
length
;
o
++
)
a
.
push
(
y
(
n
.
parts
[
o
]));
i
[
n
.
id
]
=
{
id
:
n
.
id
,
refs
:
1
,
parts
:
a
}}}}
function
v
(){
var
e
=
document
.
createElement
(
"style"
);
return
e
.
type
=
"text/css"
,
a
.
appendChild
(
e
),
e
}
function
y
(
e
){
var
t
,
n
,
r
=
document
.
querySelector
(
"style["
+
d
+
'~="'
+
e
.
id
+
'"]'
);
if
(
r
){
if
(
s
)
return
c
;
r
.
parentNode
.
removeChild
(
r
)}
if
(
p
){
var
o
=
l
++
;
r
=
u
||
(
u
=
v
()),
t
=
_
.
bind
(
null
,
r
,
o
,
!
1
),
n
=
_
.
bind
(
null
,
r
,
o
,
!
0
)}
else
r
=
v
(),
t
=
function
(
e
,
t
){
var
n
=
t
.
css
,
r
=
t
.
media
,
o
=
t
.
sourceMap
;
r
&&
e
.
setAttribute
(
"media"
,
r
);
f
.
ssrId
&&
e
.
setAttribute
(
d
,
t
.
id
);
o
&&
(
n
+=
"
\n
/*# sourceURL="
+
o
.
sources
[
0
]
+
" */"
,
n
+=
"
\n
/*# sourceMappingURL=data:application/json;base64,"
+
btoa
(
unescape
(
encodeURIComponent
(
JSON
.
stringify
(
o
))))
+
" */"
);
if
(
e
.
styleSheet
)
e
.
styleSheet
.
cssText
=
n
;
else
{
for
(;
e
.
firstChild
;)
e
.
removeChild
(
e
.
firstChild
);
e
.
appendChild
(
document
.
createTextNode
(
n
))}}.
bind
(
null
,
r
),
n
=
function
(){
r
.
parentNode
.
removeChild
(
r
)};
return
t
(
e
),
function
(
r
){
if
(
r
){
if
(
r
.
css
===
e
.
css
&&
r
.
media
===
e
.
media
&&
r
.
sourceMap
===
e
.
sourceMap
)
return
;
t
(
e
=
r
)}
else
n
()}}
e
.
exports
=
function
(
e
,
t
,
n
,
r
){
s
=
n
,
f
=
r
||
{};
var
a
=
o
(
e
,
t
);
return
h
(
a
),
function
(
t
){
for
(
var
n
=
[],
r
=
0
;
r
<
a
.
length
;
r
++
){
var
u
=
a
[
r
];(
l
=
i
[
u
.
id
]).
refs
--
,
n
.
push
(
l
)}
t
?
h
(
a
=
o
(
e
,
t
)):
a
=
[];
for
(
r
=
0
;
r
<
n
.
length
;
r
++
){
var
l
;
if
(
0
===
(
l
=
n
[
r
]).
refs
){
for
(
var
s
=
0
;
s
<
l
.
parts
.
length
;
s
++
)
l
.
parts
[
s
]();
delete
i
[
l
.
id
]}}}};
var
b
,
m
=
(
b
=
[],
function
(
e
,
t
){
return
b
[
e
]
=
t
,
b
.
filter
(
Boolean
).
join
(
"
\n
"
)});
function
_
(
e
,
t
,
n
,
r
){
var
o
=
n
?
""
:
r
.
css
;
if
(
e
.
styleSheet
)
e
.
styleSheet
.
cssText
=
m
(
t
,
o
);
else
{
var
i
=
document
.
createTextNode
(
o
),
a
=
e
.
childNodes
;
a
[
t
]
&&
e
.
removeChild
(
a
[
t
]),
a
.
length
?
e
.
insertBefore
(
i
,
a
[
t
]):
e
.
appendChild
(
i
)}}},
function
(
e
,
t
){
e
.
exports
=
function
(
e
,
t
){
for
(
var
n
=
[],
r
=
{},
o
=
0
;
o
<
t
.
length
;
o
++
){
var
i
=
t
[
o
],
a
=
i
[
0
],
u
=
{
id
:
e
+
":"
+
o
,
css
:
i
[
1
],
media
:
i
[
2
],
sourceMap
:
i
[
3
]};
r
[
a
]?
r
[
a
].
parts
.
push
(
u
):
n
.
push
(
r
[
a
]
=
{
id
:
a
,
parts
:[
u
]})}
return
n
}},
function
(
e
,
t
){
e
.
exports
=
function
(
e
,
t
,
n
,
r
,
o
,
i
){
var
a
,
u
=
e
=
e
||
{},
l
=
typeof
e
.
default
;
"object"
!==
l
&&
"function"
!==
l
||
(
a
=
e
,
u
=
e
.
default
);
var
s
,
c
=
"function"
==
typeof
u
?
u
.
options
:
u
;
if
(
t
&&
(
c
.
render
=
t
.
render
,
c
.
staticRenderFns
=
t
.
staticRenderFns
,
c
.
_compiled
=!
0
),
n
&&
(
c
.
functional
=!
0
),
o
&&
(
c
.
_scopeId
=
o
),
i
?(
s
=
function
(
e
){(
e
=
e
||
this
.
$vnode
&&
this
.
$vnode
.
ssrContext
||
this
.
parent
&&
this
.
parent
.
$vnode
&&
this
.
parent
.
$vnode
.
ssrContext
)
||
"undefined"
==
typeof
__VUE_SSR_CONTEXT__
||
(
e
=
__VUE_SSR_CONTEXT__
),
r
&&
r
.
call
(
this
,
e
),
e
&&
e
.
_registeredComponents
&&
e
.
_registeredComponents
.
add
(
i
)},
c
.
_ssrRegister
=
s
):
r
&&
(
s
=
r
),
s
){
var
f
=
c
.
functional
,
d
=
f
?
c
.
render
:
c
.
beforeCreate
;
f
?(
c
.
_injectStyles
=
s
,
c
.
render
=
function
(
e
,
t
){
return
s
.
call
(
t
),
d
(
e
,
t
)}):
c
.
beforeCreate
=
d
?[].
concat
(
d
,
s
):[
s
]}
return
{
esModule
:
a
,
exports
:
u
,
options
:
c
}}},
function
(
e
,
t
,
n
){
"use strict"
;
t
.
__esModule
=!
0
;
var
r
,
o
=
n
(
15
),
i
=
(
r
=
o
)
&&
r
.
__esModule
?
r
:{
default
:
r
};
t
.
default
=
function
(
e
,
t
,
n
){
return
t
in
e
?(
0
,
i
.
default
)(
e
,
t
,{
value
:
n
,
enumerable
:
!
0
,
configurable
:
!
0
,
writable
:
!
0
}):
e
[
t
]
=
n
,
e
}},
function
(
e
,
t
,
n
){
e
.
exports
=
{
default
:
n
(
16
),
__esModule
:
!
0
}},
function
(
e
,
t
,
n
){
n
(
17
);
var
r
=
n
(
4
).
Object
;
e
.
exports
=
function
(
e
,
t
,
n
){
return
r
.
defineProperty
(
e
,
t
,
n
)}},
function
(
e
,
t
,
n
){
var
r
=
n
(
18
);
r
(
r
.
S
+
r
.
F
*!
n
(
0
),
"Object"
,{
defineProperty
:
n
(
5
).
f
})},
function
(
e
,
t
,
n
){
var
r
=
n
(
3
),
o
=
n
(
4
),
i
=
n
(
19
),
a
=
n
(
21
),
u
=
n
(
27
),
l
=
function
(
e
,
t
,
n
){
var
s
,
c
,
f
,
d
=
e
&
l
.
F
,
p
=
e
&
l
.
G
,
h
=
e
&
l
.
S
,
v
=
e
&
l
.
P
,
y
=
e
&
l
.
B
,
b
=
e
&
l
.
W
,
m
=
p
?
o
:
o
[
t
]
||
(
o
[
t
]
=
{}),
_
=
m
.
prototype
,
g
=
p
?
r
:
h
?
r
[
t
]:(
r
[
t
]
||
{}).
prototype
;
for
(
s
in
p
&&
(
n
=
t
),
n
)(
c
=!
d
&&
g
&&
void
0
!==
g
[
s
])
&&
u
(
m
,
s
)
||
(
f
=
c
?
g
[
s
]:
n
[
s
],
m
[
s
]
=
p
&&
"function"
!=
typeof
g
[
s
]?
n
[
s
]:
y
&&
c
?
i
(
f
,
r
):
b
&&
g
[
s
]
==
f
?
function
(
e
){
var
t
=
function
(
t
,
n
,
r
){
if
(
this
instanceof
e
){
switch
(
arguments
.
length
){
case
0
:
return
new
e
;
case
1
:
return
new
e
(
t
);
case
2
:
return
new
e
(
t
,
n
)}
return
new
e
(
t
,
n
,
r
)}
return
e
.
apply
(
this
,
arguments
)};
return
t
.
prototype
=
e
.
prototype
,
t
}(
f
):
v
&&
"function"
==
typeof
f
?
i
(
Function
.
call
,
f
):
f
,
v
&&
((
m
.
virtual
||
(
m
.
virtual
=
{}))[
s
]
=
f
,
e
&
l
.
R
&&
_
&&!
_
[
s
]
&&
a
(
_
,
s
,
f
)))};
l
.
F
=
1
,
l
.
G
=
2
,
l
.
S
=
4
,
l
.
P
=
8
,
l
.
B
=
16
,
l
.
W
=
32
,
l
.
U
=
64
,
l
.
R
=
128
,
e
.
exports
=
l
},
function
(
e
,
t
,
n
){
var
r
=
n
(
20
);
e
.
exports
=
function
(
e
,
t
,
n
){
if
(
r
(
e
),
void
0
===
t
)
return
e
;
switch
(
n
){
case
1
:
return
function
(
n
){
return
e
.
call
(
t
,
n
)};
case
2
:
return
function
(
n
,
r
){
return
e
.
call
(
t
,
n
,
r
)};
case
3
:
return
function
(
n
,
r
,
o
){
return
e
.
call
(
t
,
n
,
r
,
o
)}}
return
function
(){
return
e
.
apply
(
t
,
arguments
)}}},
function
(
e
,
t
){
e
.
exports
=
function
(
e
){
if
(
"function"
!=
typeof
e
)
throw
TypeError
(
e
+
" is not a function!"
);
return
e
}},
function
(
e
,
t
,
n
){
var
r
=
n
(
5
),
o
=
n
(
26
);
e
.
exports
=
n
(
0
)?
function
(
e
,
t
,
n
){
return
r
.
f
(
e
,
t
,
o
(
1
,
n
))}:
function
(
e
,
t
,
n
){
return
e
[
t
]
=
n
,
e
}},
function
(
e
,
t
,
n
){
var
r
=
n
(
1
);
e
.
exports
=
function
(
e
){
if
(
!
r
(
e
))
throw
TypeError
(
e
+
" is not an object!"
);
return
e
}},
function
(
e
,
t
,
n
){
e
.
exports
=!
n
(
0
)
&&!
n
(
6
)(
function
(){
return
7
!=
Object
.
defineProperty
(
n
(
24
)(
"div"
),
"a"
,{
get
:
function
(){
return
7
}}).
a
})},
function
(
e
,
t
,
n
){
var
r
=
n
(
1
),
o
=
n
(
3
).
document
,
i
=
r
(
o
)
&&
r
(
o
.
createElement
);
e
.
exports
=
function
(
e
){
return
i
?
o
.
createElement
(
e
):{}}},
function
(
e
,
t
,
n
){
var
r
=
n
(
1
);
e
.
exports
=
function
(
e
,
t
){
if
(
!
r
(
e
))
return
e
;
var
n
,
o
;
if
(
t
&&
"function"
==
typeof
(
n
=
e
.
toString
)
&&!
r
(
o
=
n
.
call
(
e
)))
return
o
;
if
(
"function"
==
typeof
(
n
=
e
.
valueOf
)
&&!
r
(
o
=
n
.
call
(
e
)))
return
o
;
if
(
!
t
&&
"function"
==
typeof
(
n
=
e
.
toString
)
&&!
r
(
o
=
n
.
call
(
e
)))
return
o
;
throw
TypeError
(
"Can't convert object to primitive value"
)}},
function
(
e
,
t
){
e
.
exports
=
function
(
e
,
t
){
return
{
enumerable
:
!
(
1
&
e
),
configurable
:
!
(
2
&
e
),
writable
:
!
(
4
&
e
),
value
:
t
}}},
function
(
e
,
t
){
var
n
=
{}.
hasOwnProperty
;
e
.
exports
=
function
(
e
,
t
){
return
n
.
call
(
e
,
t
)}},
function
(
e
,
t
,
n
){
"use strict"
;
var
r
=
function
(){
var
e
=
this
,
t
=
e
.
$createElement
,
n
=
e
.
_self
.
_c
||
t
;
return
n
(
"div"
,{
attrs
:{
id
:
"selecttree"
}},[
n
(
"el-select"
,{
ref
:
"tsSselect"
,
attrs
:{
value
:
e
.
valueTitle
,
clearable
:
e
.
clearable
},
on
:{
clear
:
e
.
clearHandle
}},[
n
(
"el-option"
,{
staticClass
:
"options"
,
attrs
:{
value
:
e
.
valueTitle
,
label
:
e
.
valueTitle
}},[
n
(
"el-tree"
,{
ref
:
"selectTree"
,
attrs
:{
id
:
"tree-option"
,
"default-expand-all"
:
""
,
"expand-on-click-node"
:
!
1
,
accordion
:
e
.
accordion
,
data
:
e
.
options
,
props
:
e
.
props
,
"node-key"
:
e
.
props
.
value
,
"default-expanded-keys"
:
e
.
defaultExpandedKey
},
on
:{
"node-click"
:
e
.
handleNodeClick
}})],
1
)],
1
)],
1
)};
r
.
_withStripped
=!
0
;
var
o
=
{
render
:
r
,
staticRenderFns
:[]};
t
.
a
=
o
}]).
default
});
Vue
.
component
(
'tree-select'
,
treeSelect
)
Vue
.
component
(
'tree-select'
,
treeSelect
)
\ No newline at end of file
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment