Vue.js В строгом режиме не допускаются множественные определения свойства - PullRequest
0 голосов
/ 24 мая 2018

Добрый день.

Мы создаем наше приложение, используя Vuejs / Vuex / vue-router, используя https://github.com/vuejs/vue-hackernews-2.0

. При создании и просмотре нашего приложения с помощью IE11 мы получаем SCRIPT1046: Multiple definitions of a property not allowed in strict modeи он ссылается на скомпилированный файл app.[#hash].js.Я отслеживал свойство дубликата для следующего компонента:

<div class="form-group form-group-list">
    <label aria-labelledby="Shopping preference">Shopping preference</label>
    <ul class="inline">
        <li>
            <label for="users__secondary_signup__gender__female" aria-labelledby="Gender female">
                    <span class="enhanced-radio" :class="{ 'selected': selectedGender === 'FEMALE' }">
                        <input id="users__secondary_signup__gender__female" class="enhance-radio"
                                :checked="selectedGender === 'FEMALE'" name="gender"
                                type="radio" value="FEMALE" v-model="selectedGender">
                    </span> Female
            </label>
        </li>
        <li>
            <label for="users__secondary_signup__gender__male" aria-labelledby="Gender male">
                    <span class="enhanced-radio" :class="{ 'selected': selectedGender === 'MALE' }">
                        <input id="users__secondary_signup__gender__male" class="enhance-radio"
                                :checked="selectedGender === 'MALE'" name="gender"
                                type="radio" value="MALE" v-model="selectedGender">
                    </span> Male
            </label>
        </li>
    </ul>
</div>

Единственная ссылка в скомпилированном файле на них:

domProps: {
    checked: "MALE" === t.selectedGender,
    checked: t._q(t.selectedGender, "MALE")
},
and
domProps: {
    checked: "FEMALE" === t.selectedGender,
    checked: t._q(t.selectedGender, "FEMALE")
},

Я не могу найти больше нигде в скомпилированномфайл, в котором могут быть дублированные свойства объекта.Кто-нибудь видел это?Мы что-то не так делаем в компоненте, чтобы он это делал?

Спасибо, любая помощь приветствуется.

Ответы [ 2 ]

0 голосов
/ 19 марта 2019

Чтобы построить ответ @Charles, это верно и для других дублирующих свойств.Например, вы не можете объявить :value="myProperty" и value="true", поскольку это создаст подобный код, упомянутый в ответе Чарльза.

Простое удаление дублирующих свойств устраняет подобные проблемы.

0 голосов
/ 22 августа 2018

Вы не можете использовать v-модель и: проверено одновременно.Когда вы добавили v-model = "selectedGender", вы предоставили способ определения проверенного состояния на основе значения selectedGender.Это привело к созданию этого кода:

проверено: t._q (t.selectedGender, "MALE")

Когда вы также добавили: check = "selectedGender === 'FEMALE' 'вы заставили его добавить этот другой способ установить проверенный статус:

checked: "FEMALE" === t.selectedGender,

Вы не можете иметь оба.Просто удалите: флажок =, чтобы исправить это.

...