Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
iBiz-Vue-R7-Res
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz-R7前端标准模板
iBiz-Vue-R7-Res
提交
94233f1c
提交
94233f1c
编写于
9月 15, 2020
作者:
llz
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
修改avue-custom-form组件数据传递方式为双向绑定
上级
9e9286ee
变更
1
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
34 行增加
和
40 行删除
+34
-40
avue-custom-form.vue
src/components/avue-custom-form/avue-custom-form.vue
+34
-40
未找到文件。
src/components/avue-custom-form/avue-custom-form.vue
浏览文件 @
94233f1c
<
template
>
<
template
>
<div
v-if=
"formOption!=null"
class=
"app-custom-form"
>
<div
v-if=
"formOption!=null"
class=
"app-custom-form"
>
<avue-form
:option=
"formOption"
v-model=
"form
value
"
></avue-form>
<avue-form
:option=
"formOption"
v-model=
"form
Val
"
></avue-form>
</div>
</div>
</
template
>
</
template
>
...
@@ -15,7 +15,7 @@ import {
...
@@ -15,7 +15,7 @@ import {
}
from
"vue-property-decorator"
;
}
from
"vue-property-decorator"
;
import
{
Subject
,
Subscription
}
from
"rxjs"
;
import
{
Subject
,
Subscription
}
from
"rxjs"
;
import
axios
from
'axios'
;
import
axios
from
"axios"
;
@
Component
({})
@
Component
({})
export
default
class
AvueCustomForm
extends
Vue
{
export
default
class
AvueCustomForm
extends
Vue
{
/**
/**
...
@@ -24,8 +24,7 @@ export default class AvueCustomForm extends Vue {
...
@@ -24,8 +24,7 @@ export default class AvueCustomForm extends Vue {
* @type {any}
* @type {any}
* @memberof AvueCustomForm
* @memberof AvueCustomForm
*/
*/
@
Prop
()
@
Prop
()
public
options
?:
any
;
public
options
?:
any
;
/**
/**
* 是否需要转换为string类型
* 是否需要转换为string类型
...
@@ -33,8 +32,7 @@ export default class AvueCustomForm extends Vue {
...
@@ -33,8 +32,7 @@ export default class AvueCustomForm extends Vue {
* @type {boolean}
* @type {boolean}
* @memberof AvueCustomForm
* @memberof AvueCustomForm
*/
*/
@
Prop
()
@
Prop
()
public
isParseString
?:
boolean
;
public
isParseString
?:
boolean
;
/**
/**
* 远端地址
* 远端地址
...
@@ -50,7 +48,7 @@ export default class AvueCustomForm extends Vue {
...
@@ -50,7 +48,7 @@ export default class AvueCustomForm extends Vue {
* @type {any}
* @type {any}
* @memberof AvueCustomForm
* @memberof AvueCustomForm
*/
*/
@
Prop
(
)
public
value
:
any
;
@
Model
(
'change'
)
public
value
:
any
;
/**
/**
* 是否将表单数据通过组件配置带入组件中
* 是否将表单数据通过组件配置带入组件中
...
@@ -60,25 +58,6 @@ export default class AvueCustomForm extends Vue {
...
@@ -60,25 +58,6 @@ export default class AvueCustomForm extends Vue {
*/
*/
@
Prop
()
public
isFormData
?:
boolean
;
@
Prop
()
public
isFormData
?:
boolean
;
/**
* 监听事件
*
* @param {*} newVal
* @param {*} oldVal
* @memberof AvueCustomForm
*/
@
Watch
(
"value"
)
public
onValueChange
(
newVal
:
any
,
oldVal
:
any
)
{
if
(
newVal
)
{
let
obj
:
any
=
{};
if
(
newVal
&&
newVal
!=
null
)
{
if
(
this
.
isParseString
)
obj
=
JSON
.
parse
(
newVal
);
else
obj
=
newVal
;
}
if
(
obj
)
this
.
formvalue
=
JSON
.
parse
(
JSON
.
stringify
(
obj
));
}
}
/**
/**
* 表单数据
* 表单数据
*
*
...
@@ -96,6 +75,31 @@ export default class AvueCustomForm extends Vue {
...
@@ -96,6 +75,31 @@ export default class AvueCustomForm extends Vue {
*/
*/
@
Prop
()
public
formState
!
:
Subject
<
any
>
;
@
Prop
()
public
formState
!
:
Subject
<
any
>
;
/**
* 获取组件值
*
* @return {any}
* @memberof AvueCustomForm
*/
get
formVal
()
{
let
obj
:
any
=
{};
if
(
this
.
value
)
{
if
(
this
.
isParseString
)
obj
=
JSON
.
parse
(
this
.
value
);
else
obj
=
this
.
value
;
}
return
obj
;
}
/**
* 设置组件值
*
* @param value
* @memberof AvueCustomForm
*/
set
formVal
(
value
:
any
)
{
this
.
setValue
(
value
);
}
/**
/**
* 视图状态事件
* 视图状态事件
*
*
...
@@ -113,14 +117,6 @@ export default class AvueCustomForm extends Vue {
...
@@ -113,14 +117,6 @@ export default class AvueCustomForm extends Vue {
*/
*/
public
formOption
:
any
=
null
;
public
formOption
:
any
=
null
;
/**
* avue-form绑定值
*
* @type {any}
* @memberof AvueCustomForm
*/
public
formvalue
:
any
=
{};
/**
/**
* avue-form默认配置
* avue-form默认配置
*
*
...
@@ -177,9 +173,9 @@ export default class AvueCustomForm extends Vue {
...
@@ -177,9 +173,9 @@ export default class AvueCustomForm extends Vue {
*
*
* @memberof AvueCustomForm
* @memberof AvueCustomForm
*/
*/
public
created
(){
public
created
()
{
const
win
:
any
=
window
;
const
win
:
any
=
window
;
win
.
axios
=
axios
;
win
.
axios
=
axios
;
Vue
.
use
(
win
.
AVUE
);
Vue
.
use
(
win
.
AVUE
);
}
}
...
@@ -209,9 +205,7 @@ export default class AvueCustomForm extends Vue {
...
@@ -209,9 +205,7 @@ export default class AvueCustomForm extends Vue {
const
get
:
Promise
<
any
>
=
this
.
$http
.
get
(
this
.
url
);
const
get
:
Promise
<
any
>
=
this
.
$http
.
get
(
this
.
url
);
get
.
then
((
response
:
any
)
=>
{
get
.
then
((
response
:
any
)
=>
{
if
(
response
&&
response
.
data
&&
response
.
data
.
view_config
)
{
if
(
response
&&
response
.
data
&&
response
.
data
.
view_config
)
{
that
.
formOption
=
JSON
.
parse
(
response
.
data
.
view_config
)[
that
.
formOption
=
JSON
.
parse
(
response
.
data
);
"formConfig"
];
if
(
this
.
isFormData
)
that
.
getFormData
();
if
(
this
.
isFormData
)
that
.
getFormData
();
}
}
});
});
...
@@ -233,7 +227,7 @@ export default class AvueCustomForm extends Vue {
...
@@ -233,7 +227,7 @@ export default class AvueCustomForm extends Vue {
public
getFormData
()
{
public
getFormData
()
{
let
that
:
any
=
this
;
let
that
:
any
=
this
;
let
obj
:
any
;
let
obj
:
any
;
if
(
this
.
value
)
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
value
));
if
(
this
.
formVal
)
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
formVal
));
else
obj
=
{};
else
obj
=
{};
let
recursionOption
:
any
=
function
(
group
:
any
)
{
let
recursionOption
:
any
=
function
(
group
:
any
)
{
group
.
column
.
forEach
((
gItem
:
any
)
=>
{
group
.
column
.
forEach
((
gItem
:
any
)
=>
{
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录