Я хочу перечислить пользователей в магазине. Это 100% работает, когда я использую модель пользователя ниже.indexOf (model.object) вместо indexOf (модель) не работает по назначению
// Model
store : { type: Array },
Тогда есть радиокнопки каждого магазина.
<!-- Button for 'all' users -->
<label class="btn-l33t" ng-model="radio.model" btn-radio="allstores">
{{global.user.company || 'null'}}
</label>
<!-- Button that filters users by store. 100% working -->
<ul>
<li ng-repeat="store in global.user.store">
<label class="btn-l33t" ng-model="radio.model" btn-radio="store">
{{store}}
</label>
</li>
</ul>
Наконец есть таблица пользователей
<!-- Show user if store is in user.store -->
<!-- 100% working -->
<tr ng-show="user.store.indexOf(radio.model) != -1 || radio.model === allstores" data-ng-repeat="user in users">
Так что теперь я изменил свою модель. Массив магазинов принимает объект, поэтому мы можем иметь разделы в магазинах.
store: {
type: Array,
thing: {
name: String,
section: Array,
}
},
Этот список пользователей работает отлично, но таблица пользователей не будет фильтровать больше. Проверка переключателя ничего не делает. Я обновил радиокнопки, и они прекрасно показывают название магазина &.
<label class="btn-l33t" ng-model="radio.model" btn-radio="allstores">
{{global.user.company || 'null'}}
</label>
<ul>
<li ng-repeat="store in global.user.store">
<label class="btn-l33t" ng-model="radio.model" btn-radio="store">
{{store.name}} <!-- changed {{store}} to {{store.name}} -->
<!-- for some reason it's store.name and not store.thing.name -->
</label>
<!-- added sections. This is working fine -->
<ul>
<li ng-repeat="section in store.section" >
<label class="btn-l33t" ng-model="radio.model2" btn-radio="section">
{{section}}
</label>
</li>
</ul>
</li>
</ul>
Где я столкнулся с проблемой - это список пользователей списка. Не уверен, что здесь положить, чтобы исправить это.
<tr ng-show="user.store.thing.name.indexOf(radio.model.name) != -1 || radio.model === null" data-ng-repeat="user in users">
Edit/Update: Это, как я добавляю магазины:
var obj ={
name: $scope.datStore.name,
section: ["grocery","utensils"]
}
user3[0].store.push(obj);
Может быть, именно поэтому stores.name работает, и это не stores.thing.name. Но не следует ли обновлять модель? По какой-то причине модель принимает это.
Привет! Не могли бы вы взглянуть на мой ответ и сообщить мне, если это решает ваш вопрос и/или если вам нужна дополнительная помощь. Если мой ответ разрешит ваш вопрос, не могли бы вы пометить его как принятый? Благодаря! – Josep