You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have encountered a problem where documentation.js is not able to generate documentation for Vue components when using the script setup syntax. However, it works correctly for traditional Vue components using <script lang="ts">.
The code snippet below is an example of a Vue component that documentation.js correctly generates documentation for:
<script lang="ts">
/** * A simple button component * @constructor Button*//** * props variables * * @property{string}color - background color of the button * @property{number}width - button width * @property{number}height - button height * @property{Function}sum - sum function that takes x and y and returns the sum of x and y*/const props =defineProps({ color: { type: String, required: true, }, width: Number, height: Number, sum: { type: Function, required: true, },});/** * This method logs the input parameters to the console. * @param{string}text - user text input*/function summarize(text) {console.log("summarization...");}/** * The function * @param{number}x - one input number * @returns{number} This is the result*/function increase(x) {returnx+1;}
</script>
However, when the same Vue component is written with the script setup syntax, documentation.js is unable to generate documentation:
<script setup lang="ts">
/** * A simple button component * @constructor Button*//** * props variables * * @property{string}color - background color of the button * @property{number}width - button width * @property{number}height - button height * @property{Function}sum - sum function that takes x and y and returns the sum of x and y*/const props =defineProps({ color: { type: String, required: true, }, width: Number, height: Number, sum: { type: Function, required: true, },});/** * This method logs the input parameters to the console. * @param{string}text - user text input*/function summarize(text) {console.log("summarization...");}/** * The function * @param{number}x - one input number * @returns{number} This is the result*/function increase(x) {returnx+1;}
</script>
Expected Output:
I expected documentation.js to generate the same documentation as it does for the traditional script syntax, including documentation for props, methods, and any additional jsdoc/tsdoc comments.
I believe the issue lies in the lack of support for the Vue.js script setup syntax. I'd appreciate it if the support for this syntax could be added to the tool. Thank you!
Environment:
What version of documentation.js are you using?: 14.0.2
How are you running documentation.js (on the CLI, Node.js API, Grunt, other?): CLI
Node.js version: v19.9.0
Vue version: 3.2.45
TypeScript version: 4.7.4
OS: macOS
The text was updated successfully, but these errors were encountered:
Issue:
I have encountered a problem where documentation.js is not able to generate documentation for Vue components when using the script setup syntax. However, it works correctly for traditional Vue components using
<script lang="ts">
.The code snippet below is an example of a Vue component that documentation.js correctly generates documentation for:
However, when the same Vue component is written with the script setup syntax, documentation.js is unable to generate documentation:
Expected Output:
I expected documentation.js to generate the same documentation as it does for the traditional script syntax, including documentation for props, methods, and any additional jsdoc/tsdoc comments.
I believe the issue lies in the lack of support for the Vue.js script setup syntax. I'd appreciate it if the support for this syntax could be added to the tool. Thank you!
Environment:
The text was updated successfully, but these errors were encountered: