ionic-team / ionic-team/ionic-framework

bug: Vue IonTabBar and IonButtons missing slot prop type

Ouverte
#30,545 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
package: vue type: bug
Langage dominant
TypeScript
Étoiles
52.7k
Forks
13.3k
Merge moyen
1 j 15 h
PR mergées (30 j)
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

v8.x

### Current Behavior

In a Vue application with a strict templates vue-tsc preset (that disallows undefined properties to be set), using the `IonTabBar` or `IonButtons` with a named slot (for example `slot="bottom"`) leads to a TypeScript error.

This is due to the fact that vue-tsc doesn't recognise a `slot` prop.
There may be more components with the same issue.

### Expected Behavior

I expect the component definition to include the `slot` property.

### Steps to Reproduce

In a vue project with vue-tsc's configuration set like so (part of tsconfig.json)
```json
"vueCompilerOptions": {
"strictTemplates": true
}
```

Add this to any vue component's template:

```


Home


```

### Code Reproduction URL

https://stackblitz.com/edit/vue-kq5gzqta?file=package.json,src%2Fcomponents%2FHelloWorld.vue,tsconfig.json

### Ionic Info

Ionic:

Ionic CLI : 7.2.0
Ionic Framework : @ionic/vue 8.6.2

Capacitor:

Capacitor CLI : not installed
@capacitor/android : 7.4.0
@capacitor/core : 7.4.0
@capacitor/ios : 7.4.0

Utility:

cordova-res : not installed globally
native-run : 2.0.1

System:

NodeJS : v20.17.0
npm : 11.0.0
OS : macOS Unknown

### Additional Information

_No response_

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.