language-tools
language-tools copied to clipboard
Format on save removes defineProps if lang="ts"
Volar version: v1.8.15 - v1.8.27
Steps to reproduce
- Have a .vue file which uses script setup and TypeScript
- Use Volar version v1.8.15 - v1.8.27
- Use 'format on save' (Prettier as formatter)
Actual behavior
Before save
<script setup lang="ts">
defineProps();
</script>
After save
<script setup lang="ts">
</script>
It removes defineProps();
after saving (which triggers format on save).
Expected behavior Before save
<script setup lang="ts">
defineProps();
</script>
After save
<script setup lang="ts">
defineProps();
</script>
It does not remove defineProps();
after saving (which triggers format on save).
Workarounds
- Remove
lang="ts"
(not really an option) - Use version Volar v1.8.14 - this behavior does not occur in versions prior to v1.8.15
Installing https://marketplace.visualstudio.com/items?itemName=Vue.volar also resolves the issue.
Please check if this issue has been resolved in version 2.x. If not, feel free to create a new one.