40 lines
		
	
	
		
			714 B
		
	
	
	
		
			Vue
		
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			714 B
		
	
	
	
		
			Vue
		
	
	
| <docs>
 | |
| ---
 | |
| order: 4
 | |
| title:
 | |
|   zh-CN: ๅๆง็้ข่ง
 | |
|   en-US: Controlled Preview
 | |
| ---
 | |
| 
 | |
| ## zh-CN
 | |
| 
 | |
| ๅฏไปฅไฝฟ้ข่งๅๆงใ
 | |
| 
 | |
| ## en-US
 | |
| 
 | |
| You can make preview controlled.
 | |
| 
 | |
| </docs>
 | |
| 
 | |
| <template>
 | |
|   <div>
 | |
|     <a-button type="primary" @click="() => setVisible(true)">show image preview</a-button>
 | |
|     <a-image
 | |
|       :width="200"
 | |
|       :style="{ display: 'none' }"
 | |
|       :preview="{
 | |
|         visible,
 | |
|         onVisibleChange: setVisible,
 | |
|       }"
 | |
|       src="https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png"
 | |
|     />
 | |
|   </div>
 | |
| </template>
 | |
| <script lang="ts" setup>
 | |
| import { ref } from 'vue';
 | |
| const visible = ref<boolean>(false);
 | |
| const setVisible = (value): void => {
 | |
|   visible.value = value;
 | |
| };
 | |
| </script>
 |