Как иметь пустое значение в ng-option, а не NULL

Так что я новичок в angularjs, и я не могу найти, как это сделать: я хочу использовать ng-options и иметь пустое значение в качестве опции для всех.

<h5 style="display:inline;">Level    </h5>
<select name="Levelfilter" ng-model="search.level">
    <option selected value="">all    </option>
    <option value="0">Cantrip    </option>
    <option value="1">1st    </option>
    <option value="2">2ed    </option>
    <option value="3">3rd    </option>
    <option value="4">4th    </option>
    <option value="5">5th    </option>
    <option value="6">6th    </option>
    <option value="7">7th    </option>
    <option value="8">8th    </option>
    <option value="9">9th    </option>
</select>

<h5 style="display:inline;">duration</h5>

<select name="durationfilter" ng-options="c.duration as c.duration for c in allspells.spells | unique:'duration'" ng-model="search.duration">
    <option selected value="">all    </option>
</select>

<h5 style="display:inline;">Casting Time    </h5>

<select name="castingTimefilter" ng-options="c.castingTime as c.castingTime for c in allspells.spells track by c.castingTime | unique:'castingTime'" ng-model="search.castingTime" ng-init="search.castingTime=''">
    <option selected value="">all    </option>
</select>

Выбор Levelfilter работает так, как я хочу. Когда опция all выбрана, фильтр показывает все уровни, а опция all имеет значение "". Однако 2-й и 3-й варианты выбора, использующие опцию ng, устанавливают значение NULL, а не "". Есть ли способ изменить это, или я должен добавить в код что-то вроде "если ноль, то serch.castingTime == ''"

Спасибо заранее за любую помощь.

1 ответ

Решение

Это работа вокруг, которую я в конечном итоге использовал, если есть лучший способ сделать это, дайте мне знать. Но это работает на данный момент.

app.filter("removenull", function(){ return function(object, query){
    if(query.castingTime==null){
        query.castingTime=""
    }
    if ( query.duration==null) {
              query.duration=""
    }
    return object;
}});
Другие вопросы по тегам