ionic-team / ionic-team/ionic-framework

bug: ion-datetime (and other components) throw `instance[watchMethodName] is not a function` when used inside inline IonModal (React)

Open
#30,925 4 comments 0 reactions 0 assignees View on GitHub
package: core stencil type: bug
Dominant language
TypeScript
Stars
52.7k
Forks
13.3k
Avg merge
1d 15h
Merged PRs (30d)
51

Description

### Prerequisites

- [x] I have read the [Contributing Guidelines](https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#creating-an-issue).
- [x] I agree to follow the [Code of Conduct](https://ionicframework.com/code-of-conduct).
- [x] I have searched for [existing issues](https://github.com/ionic-team/ionic-framework/issues) that already report this problem, without success.

### Ionic Framework Version

v7.x

### Current Behavior

```
TypeError: instance[watchMethodName] is not a function
at Datetime.set [as min]
at attributeChangedCallback
```

### Expected Behavior

Ionic components should not throw runtime errors when used inside IonModal, even when controlled via React props.

At minimum:
• setting props like min, value, or isOpen should be safe
• or Ionic should document that this pattern is unsupported

### Steps to Reproduce

```
const Example = () => {
const [open, setOpen] = useState(true);

return (



);
};
```

### Code Reproduction URL

null

### Ionic Info

This affects multiple components that using Overlay

### Additional Information

_No response_

Contributor guide

Open the contributing guide

Research direction

Start by running the reported React example with IonModal and IonDatetime, using the prop combinations shown for isOpen, min, and value. Trace the overlay-related component behavior across the affected components and determine whether the supported outcome is safe prop updates or documentation of an unsupported pattern. Done means the reproduction no longer throws, or the limitation is clearly documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
react, typescript
Domain
frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.