> For the complete documentation index, see [llms.txt](https://vytautas.gitbook.io/ng-state/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://vytautas.gitbook.io/ng-state/core-concepts/actions/injectable-actions.md).

# Injectable Actions

Starting from version **9.1.0** @ng-state/store supports injectable actions with possibilit to inject an Angular service into constructor. This pushes even further separation of concerns by moving not only state manipulation logic inside actions but also data retrieval, logging and other related functionality.

```typescript
@Injectable({ providedIn: 'root' })
@InjectStore('users')
export class TodosStateActions extends HasSignalStore<TodoModel[]> {
    constructor(private userService: DataService) {
        super();
    }

    getUsers() {
        this.userService.getData().subscribe(() => {
            this.store.update(state => {
                state.users.push(...state);
            });
        });
       
    }
}

```

> Due to Angular injection Injectabel actions cannot be used with decorators and state actions
