Laravel vue-multiselect错误

时间:2016-10-10 14:40:10

标签: laravel-5 vue-component

我正在尝试使用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实例上设置“已选择”的不存在路径。考虑使用“数据”选项预先初始化属性,以获得更可靠的反应性和更好的性能。

我错过了什么?

2 个答案:

答案 0 :(得分:0)

错字可能导致问题?

:seleted="multiValue"

应该是:selected =&#34; multiValue&#34;

BTW:在2.0版中不推荐使用。 :价值已经占据了它的位置。

答案 1 :(得分:0)

我认为这是因为没有名为&#39; multiValue&#39;在您的组件中。 在:seleted =&#34; multiValue&#34; 中,使用变量&#34; 选项&#34;而不是&#34; multiValue &#34;