---
name: vite-plugin-uni-platform-modifier
description: Platform modifiers for attributes and directives in uni-app - optimize bundle size by removing unused platform code
---
# vite-plugin-uni-platform-modifier
Add platform modifiers to attributes and directives for conditional compilation at the template level. Reduces bundle size by removing code for other platforms.
## Installation
```bash
npm i -D @uni-helper/vite-plugin-uni-platform-modifier
```
## Setup
```ts
// vite.config.ts
import Uni from '@dcloudio/vite-plugin-uni'
import UniPlatformModifier from '@uni-helper/vite-plugin-uni-platform-modifier'
import { defineConfig } from 'vite'
export default defineConfig({
plugins: [UniPlatformModifier(), Uni()],
})
```
## Platform Modifiers
### Directive Modifiers
```vue
H5 only content
Native view
Platform-specific click
```
### Attribute Modifiers
```vue
Content
Styled content
```
## Supported Platforms
| Modifier | Platform |
|----------|----------|
| `.h5` | H5/Web |
| `.mp-weixin` | WeChat Mini Program |
| `.mp-alipay` | Alipay Mini Program |
| `.mp-baidu` | Baidu Smart Program |
| `.mp-toutiao` | Douyin Mini Program |
| `.mp-qq` | QQ Mini Program |
| `.app` | iOS/Android App |
## How It Works
The plugin transforms templates at build time:
```vue
H5 Only
H5 Only
```
## Use Cases
- Platform-specific UI components
- Different interactions per platform
- Platform-optimized styles
- Conditional event handlers
## Combining with Other Plugins
```ts
// vite.config.ts
export default defineConfig({
plugins: [
UniComponents(),
UniPages(),
UniPlatform(), // File-based platform
UniPlatformModifier(), // Directive/attribute modifiers
Uni(),
],
})
```