1 回答

TA贡献2012条经验 获得超12个赞
类似的第三方插件,都可以用这样的方式组织成一个vue组件:
<template>
<div id="id">
<textarea></textarea>
</div>
</template>
<script>
import scriptjs from 'scriptjs'
export default {
props: {
id: String
},
mounted() {
// 获取依赖的资源 - 如果需要异步加载的话
Promise.all([
scriptjs('jquery.min.js'),
scriptjs('editormd.min.js')
])
.then(() => {
// do your logic.
// 实例化,绑定事件等操作
})
},
destoryed() {
// 解绑全局事件
// 销毁实例
},
methods: {
// 返回一些有用的函数
}
}
</script>
实例化之后,监听实例提供的方法;然后再$emit
给使用者,再提供一些get方法用于获取内部属性,等等。
具体的实现可以参考vue-ueditor
、vue-echarts
类似的。
使用方法:
<editor-md id="editormd" @update="doUpdate"></editor-md>
添加回答
举报