我试图在我的单个文件Vue组件上运行JSDoc。我发现了两个听起来应该工作的插件(这两个插件似乎都基于相同的代码):
https://www.npmjs.com/package/vue-doc
和
https://www.npmjs.com/package/jsdoc-vue
这个插件在使用速记时会中断,但这不是什么大问题,我只需要使用长时间的语言。但是,我尝试运行JSDoc的每个文件组件都会得到以下错误:
相邻的JSX元素必须封装在一个封闭的标签中。
这意味着我的组件没有一个根元素,但它们都有。我设置了像这样的测试组件,但是它失败了:
<template>
<div>
{{someData}}
</div>
</template>
<script>
export default {
data () {
return {
someData: "Test Data"
}
},
methods: {
/**
* Just a test function
* @function
*/
testFunction: function () {
alert("Testing")
}
}
}
</script>
<style lang="stylus">
div {
border: 1px solid;
}
</style>
有人有在JSDoc文件上运行.vue的经验吗?这似乎是可能的,但网上几乎没有什么信息。
谢谢
发布于 2019-01-20 23:52:29
我一直在使用documentation.js来记录我的Vue文件。关于如何开始使用它的这是一篇很棒的文章。它的易用性给我留下了深刻的印象,它生成了好看的HTML文件,您可以使用这些文件轻松地搜索您编写的函数。
例如,如果您创建如下Vue文件:
<template>
<div>{{mydata}}</div>
</template>
<script>
export default {
data: function() {
return {
mydata: "hello"
}
},
methods: {
/**
* Add two numbers.
* @param{number} num1 The first number to add
* @param{number} num2 The second number to add
* @return{number} The sum of the two numbers.
*/
addnums: function(num1, num2) {
return num1 + num2;
},
/**
* Concatenate two strings.
* @param{string} str1 The first string to concatenate.
* @param{string} str2 The second string to concatenate.
* @return{string} The concatentation of the two strings.
*/
concat: function(str1, str2) {
return str1 + str2;
}
}
}
</script>
运行documentation build /path/to/file.vue -f html -o docs
将创建一个漂亮的HTML文件,在浏览器中如下所示:
2019编辑:
实际上,我昨天发现了一个名为vuese的新库,它专门用于记录Vue组件。虽然documentation.js在帮助您记录您的方法方面做得很好,但是vuese让您将文档添加到您的道具和组件中,从而更进一步。它非常容易使用。
我几乎从这篇博客文章那里学到了我需要知道的一切。
发布于 2019-09-13 22:09:13
我编写了一个简单的@组件插件,它有助于使用@jsdoc解析.vue文件。它还为它们生成预览。查看一下:https://github.com/SoftwareBrothers/better-docs
https://stackoverflow.com/questions/42829569
复制相似问题