Module '"*.vue"' has no exported member 'emitter'.
来源:5-10 ValidateForm 编码第三部分 - 寻找外援 mitt
德育处主任
2020-10-20
是说ValidateForm.vue没有导出该模块吗?
ValidateForm.vue
<script lang="ts">
import { defineComponent, onUnmounted } from 'vue'
import mitt from 'mitt'
export const emitter = mitt()
export default defineComponent({
emits: ['form-submit'],
setup (props, context) {
const submitForm = () => {
context.emit('form-submit', true)
}
const callback = (text?: string) => {
console.log(text)
}
emitter.on('form-item-created', callback)
onUnmounted(() => {
emitter.off('form-item-created', callback)
})
return {
submitForm
}
}
})
</script>
ValidateInput.vue
<script lang="ts">
import { defineComponent, reactive, PropType, onMounted } from 'vue'
import { emitter } from './ValidateForm.vue'
const emailReg = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/
interface RuleProp {
type: 'required' | 'email';
message: string;
}
export type RulesProp = RuleProp[]
</script>
上面贴了js的局部代码。
在ValidateInput.vue引入emitter的时候就报错了。
mitt的版本是 2.1.0
写回答
1回答
-
同学你好 从代码看起来导出和引入是没问题的 而且你在另外一个问题也说过 之前是没问题 之后突然有问题 这只能是 ts 解析有问题 你方便把源代码给我一份 上传到 github 或者 gitee 都可以 我帮你看看
162021-06-02
相似问题