Skip to content

Commit 56c9967

Browse files
committed
bugfix: 部分字段默认值不生效问题
1 parent 1d51f00 commit 56c9967

39 files changed

+107
-58
lines changed

vendor/modstart/modstart/src/Field/AbstractField.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -151,9 +151,13 @@ class AbstractField implements Renderable
151151
*/
152152
protected $label;
153153
/**
154-
* @var null 字段值,null表示为空,非null表示有值
154+
* @var null 字段值,null表示没有值,非null表示有值
155155
*/
156156
protected $value = null;
157+
/**
158+
* @var null 默认值,null表示没有默认值,非null表示有默认值
159+
*/
160+
protected $defaultValue = null;
157161
/**
158162
* @var null ?
159163
*/
@@ -209,7 +213,6 @@ class AbstractField implements Renderable
209213
protected $showable = true;
210214
protected $sortable = false;
211215
protected $renderMode;
212-
protected $defaultValue = null;
213216
protected $placeholder = null;
214217
protected $help = null;
215218
protected $tip = null;

vendor/modstart/modstart/src/Field/Checkbox.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,9 @@ public function optionType($typeCls)
5353

5454
public function unserializeValue($value, AbstractField $field)
5555
{
56+
if (null === $value) {
57+
return $value;
58+
}
5659
switch ($this->getVariable('serializeType')) {
5760
case self::SERIALIZE_TYPE_COLON_SEPARATED:
5861
return TagUtil::string2Array($value);

vendor/modstart/modstart/src/Field/ComplexFields.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
*/
1212
class ComplexFields extends AbstractField
1313
{
14-
protected $value = [];
1514
protected $width = 300;
1615
protected $listable = false;
1716

@@ -53,6 +52,9 @@ public function fields($value)
5352

5453
public function unserializeValue($value, AbstractField $field)
5554
{
55+
if (null === $value) {
56+
return $value;
57+
}
5658
$value = @json_decode($value, true);
5759
if (empty($value)) {
5860
$value = new \stdClass();

vendor/modstart/modstart/src/Field/CustomField.php

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,6 @@
1515
*/
1616
class CustomField extends AbstractField
1717
{
18-
protected $value = [
19-
'type' => '',
20-
'title' => '',
21-
'data' => [
22-
'option' => [],
23-
],
24-
];
2518
protected $listable = false;
2619

2720
protected function setup()
@@ -32,6 +25,9 @@ protected function setup()
3225

3326
public function unserializeValue($value, AbstractField $field)
3427
{
28+
if (null === $value) {
29+
return $value;
30+
}
3531
$value = @json_decode($value, true);
3632
if (empty($value)) {
3733
$value = [];

vendor/modstart/modstart/src/Field/DynamicFields.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
*/
1818
class DynamicFields extends AbstractField
1919
{
20-
protected $value = [];
2120
protected $width = 300;
2221
protected $listable = false;
2322

@@ -30,6 +29,9 @@ protected function setup()
3029

3130
public function unserializeValue($value, AbstractField $field)
3231
{
32+
if (null === $value) {
33+
return $value;
34+
}
3335
$value = @json_decode($value, true);
3436
if (empty($value)) {
3537
$value = [];

vendor/modstart/modstart/src/Field/Files.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,9 @@ public function mode($mode)
4141

4242
public function unserializeValue($value, AbstractField $field)
4343
{
44+
if (null === $value) {
45+
return $value;
46+
}
4447
return ConvertUtil::toArray($value);
4548
}
4649

vendor/modstart/modstart/src/Field/Images.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@ public function server($server)
2525

2626
public function unserializeValue($value, AbstractField $field)
2727
{
28+
if (null === $value) {
29+
return $value;
30+
}
2831
return ConvertUtil::toArray($value);
2932
}
3033

vendor/modstart/modstart/src/Field/ImagesTemp.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ public function server($server)
2828

2929
public function unserializeValue($value, AbstractField $field)
3030
{
31+
if (null === $value) {
32+
return $value;
33+
}
3134
return ConvertUtil::toArray($value);
3235
}
3336

vendor/modstart/modstart/src/Field/Json.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,9 @@ public function editorHeight($height)
2929

3030
public function unserializeValue($value, AbstractField $field)
3131
{
32+
if (null === $value) {
33+
return $value;
34+
}
3235
return @json_decode($value, true);
3336
}
3437

vendor/modstart/modstart/src/Field/JsonIdItems.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,9 @@ public function previewUrl($value)
4747

4848
public function unserializeValue($value, AbstractField $field)
4949
{
50+
if (null === $value) {
51+
return $value;
52+
}
5053
return @json_decode($value, true);
5154
}
5255

0 commit comments

Comments
 (0)