【问题标题】:Laravel vue-multiselect errorLaravel vue-多选错误
【发布时间】:2017-02-19 00:38:27
【问题描述】:

我正在尝试使用 Laravel 5 实现 vue-multiselect(版本 1.1.3)。

在我的 vue 文件中,我有以下代码:

    <template>
    <div class="dropdown">
        <multiselect
                :seleted="multiValue"
                :show-labels="false"
                :options="options"
                :placeholder="placeholder"
                :searchable="true"
                :allow-empty="false"
                :multiple="true"
                key="name"
                label="name"
                @update="updateSelected"
        ></multiselect>
        <label v-show="showLabel" for="multiselect"><span></span>Language</label>
    </div>
</template>

<script>
    import { Multiselect } from 'vue-multiselect';

    export default {
        components: { Multiselect },
        props: {
                selected: null,
                options: {
                    type: Array, default: function () {
                        return []
                    }
                },
                placeholder: 'Select...'
        },
        methods: {
            updateSelected (newSelected) {
                this.selected = newSelected
            }
        }
    }
</script>

在我的刀片文件中:

<div class="form-group">
                <drop-down
                        :options="{{ $members_list->toJson() }}"
                ></drop-down>
            </div>

在我的控制器中:

 $members = DB::table('members')
            ->orderBy('member_first_name', 'asc')
            ->get();

        $members_list = $members->map(
            function($member) {
                return [
                    "value" => $member->member_id,
                    "label" => $member->member_first_name. " ". $member->member_last_name
                ];
            }
        );

当我运行页面时,我得到一个包含所有成员的选择列表,但是当我尝试选择一个时,它变成红色,它被添加到顶部的选定列表中,但我无法选择更多选项,并且在 firebug 中我收到此错误: [Vue 警告]:您在 vm 实例上设置了一个不存在的“已选择”路径。考虑使用“数据”选项预初始化属性,以获得更可靠的反应性和更好的性能。

我错过了什么?

【问题讨论】:

    标签: laravel-5 vue-component


    【解决方案1】:

    错字可能会导致问题?

    :seleted="multiValue"
    

    应该是:selected="multiValue"

    BTW :selected 在 2.0 版中已弃用。 :value 已取而代之。

    【讨论】:

      【解决方案2】:

      我认为这是因为您的组件中没有名为“multiValue”的变量。 在 :seleted="multiValue" 中,使用变量 "options" 而不是 "multiValue"

      【讨论】:

        猜你喜欢
        • 2023-03-13
        • 2019-06-07
        • 2017-02-09
        • 2017-04-20
        • 2017-06-04
        • 2017-11-12
        • 2018-02-13
        • 1970-01-01
        • 2022-12-15
        相关资源
        最近更新 更多