placeholder for select in vuejs 2.0.0

The only thing needed to work this was remove selected from default option:

 <select v-model="age">
    <option value="" disabled hidden>Select Age</option>
    .....
  </select>

For placeholder, you need to set the value attribute with the same value as in defined as initial value in your state.

Change your disabled option with

<option value="null" disabled selected hidden>Select Age</option>

and in state do something like this

data () {enter code here
  return {
    age: null,
  }
}

For others who may be landing on this question, there was an additional step for me to get the default option to appear. In my case, the v-model I was binding to was returning null and rather than an empty string. This meant that the default option was never selected once Vue bindings kicked in.

To solve for this, simple bind the value property of your default option to null:

<select v-model="age">
  <option :value="null" disabled>Select Age</option>
  ...
</select>

http://jsfiddle.net/2Logme0m/1/