mirror of
https://github.com/cjango/dcat-vue.git
synced 2025-12-06 22:40:03 +08:00
checkbox & watch
This commit is contained in:
@@ -6,12 +6,12 @@ use Dcat\Admin\Form\Field;
|
||||
use Dcat\Admin\Support\Helper;
|
||||
use Dcat\Admin\Widgets\Checkbox as WidgetCheckbox;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasOptions;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
|
||||
class Vue extends Field\Checkbox
|
||||
class Checkbox extends Field\Checkbox
|
||||
{
|
||||
use FieldCommon;
|
||||
|
||||
protected array $watch = [];
|
||||
use FieldCommon, HasOptions, HasWatch;
|
||||
|
||||
public function render()
|
||||
{
|
||||
@@ -30,9 +30,10 @@ class Vue extends Field\Checkbox
|
||||
|
||||
$this->addVariables([
|
||||
'checked' => $this->checked,
|
||||
'watch' => $this->watch,
|
||||
]);
|
||||
|
||||
$this->withProvides();
|
||||
|
||||
$this->addVariables([
|
||||
'provides' => $this->variables(),
|
||||
]);
|
||||
@@ -45,7 +46,7 @@ class Vue extends Field\Checkbox
|
||||
return $this->attributes;
|
||||
}
|
||||
|
||||
public function disabled($disabled): Vue
|
||||
public function disabled($disabled): static
|
||||
{
|
||||
$this->addVariables([
|
||||
'disabled' => (array) $disabled
|
||||
@@ -54,14 +55,11 @@ class Vue extends Field\Checkbox
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function watch($column, $handler): Vue
|
||||
protected function withProvides()
|
||||
{
|
||||
$this->watch[] = [
|
||||
'type' => "$column:change",
|
||||
'handler' => $handler,
|
||||
];
|
||||
|
||||
return $this;
|
||||
$this->addVariables([
|
||||
'component' => 'Checkbox',
|
||||
]);
|
||||
}
|
||||
|
||||
protected function checkboxRender()
|
||||
@@ -6,10 +6,11 @@ use Dcat\Admin\Form\Field;
|
||||
use Dcat\Admin\Support\Helper;
|
||||
use Illuminate\Support\Str;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
|
||||
class DateRange extends Field\DateRange
|
||||
{
|
||||
use FieldCommon;
|
||||
use FieldCommon, HasWatch;
|
||||
|
||||
public function render()
|
||||
{
|
||||
|
||||
@@ -6,10 +6,11 @@ use Dcat\Admin\Form\Field;
|
||||
use Exception;
|
||||
use Illuminate\Support\Str;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
|
||||
class Distpicker extends Field
|
||||
{
|
||||
use FieldCommon;
|
||||
use FieldCommon, HasWatch;
|
||||
// 地图高度
|
||||
protected string $height = '380px';
|
||||
// 模板id
|
||||
|
||||
@@ -5,11 +5,12 @@ namespace Weiwait\DcatVue\Field;
|
||||
use Dcat\Admin\Form\Field;
|
||||
use Illuminate\Support\Str;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
use Weiwait\DcatVue\Models\WeiwaitUpload;
|
||||
|
||||
class File extends Field\File
|
||||
{
|
||||
use FieldCommon;
|
||||
use FieldCommon, HasWatch;
|
||||
|
||||
protected string $disk;
|
||||
|
||||
|
||||
@@ -6,11 +6,12 @@ use Dcat\Admin\Form\Field;
|
||||
use Dcat\Admin\Support\Helper;
|
||||
use Illuminate\Support\Str;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
use Weiwait\DcatVue\Models\WeiwaitUpload;
|
||||
|
||||
class Image extends Field\Image
|
||||
{
|
||||
use FieldCommon;
|
||||
use FieldCommon, HasWatch;
|
||||
|
||||
protected string $disk;
|
||||
protected bool $disableCropper = false;
|
||||
|
||||
@@ -8,11 +8,12 @@ use Illuminate\Support\Arr;
|
||||
use Illuminate\Support\MessageBag;
|
||||
use Illuminate\Support\Str;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
use function Swoole\Coroutine\map;
|
||||
|
||||
class KeyValue extends Field\KeyValue
|
||||
{
|
||||
use FieldCommon;
|
||||
use FieldCommon, HasWatch;
|
||||
|
||||
private bool $is_list = false;
|
||||
private bool $is_serial = false;
|
||||
|
||||
@@ -6,10 +6,11 @@ use Dcat\Admin\Form\Field;
|
||||
use Dcat\Admin\Support\Helper;
|
||||
use Illuminate\Support\Str;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
|
||||
class ListField extends Field\ListField
|
||||
{
|
||||
use FieldCommon;
|
||||
use FieldCommon, HasWatch;
|
||||
|
||||
public function render()
|
||||
{
|
||||
|
||||
@@ -5,11 +5,12 @@ namespace Weiwait\DcatVue\Field;
|
||||
use Dcat\Admin\Form\Field;
|
||||
use Illuminate\Support\Str;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
use Weiwait\DcatVue\Models\WeiwaitUpload;
|
||||
|
||||
class MultipleFile extends Field\MultipleFile
|
||||
{
|
||||
use FieldCommon;
|
||||
use FieldCommon, HasWatch;
|
||||
|
||||
protected string $disk;
|
||||
|
||||
|
||||
@@ -6,11 +6,12 @@ use Dcat\Admin\Form\Field;
|
||||
use Dcat\Admin\Support\Helper;
|
||||
use Illuminate\Support\Str;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
use Weiwait\DcatVue\Models\WeiwaitUpload;
|
||||
|
||||
class MultipleImage extends Field\MultipleImage
|
||||
{
|
||||
use FieldCommon;
|
||||
use FieldCommon, HasWatch;
|
||||
|
||||
protected string $disk;
|
||||
|
||||
|
||||
@@ -6,10 +6,11 @@ use Dcat\Admin\Form\Field;
|
||||
use Dcat\Admin\Support\Helper;
|
||||
use Illuminate\Support\Str;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
|
||||
class MultipleSelect extends Field\MultipleSelect
|
||||
{
|
||||
use FieldCommon;
|
||||
use FieldCommon, HasWatch;
|
||||
|
||||
private string $optionsFromKeyValueField = '';
|
||||
private string $concatSeparator = '';
|
||||
|
||||
@@ -5,10 +5,11 @@ namespace Weiwait\DcatVue\Field;
|
||||
use Dcat\Admin\Form\Field;
|
||||
use Illuminate\Support\Str;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
|
||||
class Number extends Field\Number
|
||||
{
|
||||
use FieldCommon;
|
||||
use FieldCommon, HasWatch;
|
||||
|
||||
public function render()
|
||||
{
|
||||
|
||||
@@ -6,10 +6,11 @@ use Dcat\Admin\Form\Field;
|
||||
use Dcat\Admin\Support\Helper;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasOptions;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
|
||||
class Select extends Field\Select
|
||||
{
|
||||
use HasOptions, FieldCommon;
|
||||
use HasOptions, FieldCommon, HasWatch;
|
||||
|
||||
private string $optionsFromKeyValueField = '';
|
||||
private string $concatSeparator = '';
|
||||
|
||||
@@ -6,10 +6,11 @@ use Dcat\Admin\Form\Field;
|
||||
use Dcat\Admin\Support\Helper;
|
||||
use Illuminate\Support\Str;
|
||||
use Weiwait\DcatVue\Field\Traits\FieldCommon;
|
||||
use Weiwait\DcatVue\Field\Traits\HasWatch;
|
||||
|
||||
class Tag extends Field\Tags
|
||||
{
|
||||
use FieldCommon;
|
||||
use FieldCommon, HasWatch;
|
||||
|
||||
public function render()
|
||||
{
|
||||
|
||||
22
src/Field/Traits/HasWatch.php
Normal file
22
src/Field/Traits/HasWatch.php
Normal file
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
namespace Weiwait\DcatVue\Field\Traits;
|
||||
|
||||
use Dcat\Admin\Exception\RuntimeException;
|
||||
use Dcat\Admin\Form\Field;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
trait HasWatch
|
||||
{
|
||||
public function watch(string $field, string $handler): static
|
||||
{
|
||||
$this->addVariables([
|
||||
'watches' => array_merge(
|
||||
$this->variables()['watches'] ?? [],
|
||||
[compact('field', 'handler')]
|
||||
)
|
||||
]);
|
||||
|
||||
return $this;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user