Просто поместите это в свой viewDidLoad
:
UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty (kAudioSessionProperty_AudioCategory,
sizeof(sessionCategory), &sessionCategory);
v-model
- это просто абстракция поверх однонаправленного потока данных. По сути, ваш пользовательский дочерний компонент должен сделать две вещи:
value
. input
и новыми данными. Таким образом, ваш дочерний компонент будет использоваться следующим образом:
<child-component :value="myVal" @input="myVal = $event"></child-component>
В приведенном выше коде $event
- это специальная конструкция шаблона, которая содержит данные, которые дочерний компонент выпустил как часть полезная нагрузка события. Событие @input
просто обновляет значение myVal , которое снова будет передано дочернему компоненту через привязку :value
и, таким образом, односторонний поток данных.
Теперь этот шаблон повторяется так много раз, что Vue.js предоставил простой v-model
синтаксис-сахар, который можно использовать вместо приведенного выше кода.
<child-component v-model="myVal"></child-component>
Также, если по какой-то причине вы не хотите использовать value
или input
в качестве своей опоры и события, вы можете изменить их, используя атрибут model
. Вот дополнительная документация для этого .
Обратите внимание, что если вы используете Redux / Vuex, тогда избегайте использования v-model
. Для вложенных данных есть хороший шанс, что вы попадете в крайние ситуации.
Невозможно использовать v-model
для двусторонней привязки данных, так как вы хотите изменить поведение по умолчанию при изменении ввода в дочернем компоненте.
Вы хотите использовать v-bind
для отображения значения и v-on:input
для передачи данных обратно в родительский компонент.
См. Например https://codesandbox.io/s/rj76y5w02o .
Первая строка - это текст только для чтения. Выпадающий список выбора является родительским мутатором данных, а текстовое поле - дочерним компонентом.
По сути, вы хотите, чтобы данные содержались на родительской стороне и передавали данные в дочерний компонент с помощью реквизита. Внутри дочернего компонента вы хотите передать входное событие обратно родительскому для обработки с помощью $emit
.
Изменение значения с помощью раскрывающегося списка родителей приведет к обновлению значения. Изменение значения изнутри ввода текста дочернего компонента также будет. Если вы введете one
, two
или three
, выпадающий список выбора родителей также будет соответствующим образом обновлен.