# Custom component logic

**URL:** <https://forum.ionicframework.com/t/custom-component-logic/230719>\
**Category:** Ionic Framework\
**Created:** [January 30, 2023, 4:05pm UTC](https://forum.ionicframework.com/t/custom-component-logic/230719 "2023-01-30T16:05:11Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Doomkin](https://sea1.discourse-cdn.com/ionicframework/user_avatar/forum.ionicframework.com/doomkin/32/124627_2.png) [@Doomkin](https://forum.ionicframework.com/u/Doomkin)\
**Post date:** [January 30, 2023, 4:05pm UTC](https://forum.ionicframework.com/t/custom-component-logic/230719/1 "2023-01-30T16:05:11Z")

</div>

Hello,  
I created some custom component and added them to a shared module.  
To use my custom components, I simply import the shared module into the module of the page where I want to use them.  
It works fine everywhere except in modals.  
When I try to use a custom component on the shared module in a Modal, I get this error:

```auto
compiler.js:2175 Uncaught Error: Template parse errors:
Can't bind to 'fetch' since it isn't a known property of 'app-cloud-update-chip'.
1. If 'app-cloud-update-chip' is an Angular component and it has 'fetch' input, then verify that it is part of this module.
2. If 'app-cloud-update-chip' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.

```

I use modals like this:

```typescript
const modal = await this.modalController.create({
  component: CloudSearchPage,
  componentProps: {
    cloud: this.cloud
  }
});

```

What am I missing?

---

<div class="post-metadata">

**Author:** ![Hills90210](https://avatars.discourse-cdn.com/v4/letter/h/57b2e6/32.png) [@Hills90210](https://forum.ionicframework.com/u/Hills90210)\
**Post date:** [January 31, 2023, 3:28pm UTC](https://forum.ionicframework.com/t/custom-component-logic/230719/2 "2023-01-31T15:28:20Z")

</div>

You need to declare it in the module your using it in.
