时间:2020-10-31 19:29:23 | 栏目:vue | 点击:次
昨天到今天,用vue2.0在写一个性别选择框,一给option添加seledted属性就报错这里
下面是报错的代码
ERROR in ./~/vue-loader/lib/template-compiler.js?id=data-v-c231dfa2!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/second.vue template syntax error <select v-model="selected">: inline selected attributes on <option> will be ignored when using v-model. Declare initial values in the component's data option instead.
selected 已经绑定在<select></select> 上了 , 你选择了哪个选项, selected 就是那个选项的value了 ,你想让哪个选项为默认选中的话,就在data里的seleced 设置为那个选项的value
在单击<select></select> 时,给'性别'这个选项添加一个disabled属性就可以禁用了
<template> <select v-model='selected' @click="ss()"> <option v-for="(option,index) in options" v-bind:value="option.value" :disabled="option.disabled"> {{ option.text }}{{index}}{{option.disabled}} </option> </select> <span>Selected: {{ selected }}</span> </template> <script> export default{ name: 'second', data(){ return { selected: 'sex', // 比如想要默认选中为性别,那么就把他的value值设置为'sex' options: [ {text: '性别', value: 'sex', disabled: ''}, //每个选项里面就不用在多一个selected 了 {text: '男', value: '1'}, {text: '女', value: '2'} ] } }, methods: { ss: function () { this.options[0].disabled = disabled; }, } } </script>