目录
一、问题
1.在一个a.vue文件中引入另一个view.vue文件,实现父子组件嵌套时,报错:dependency was not found.
引入方式:
import ETregister from "@/views/anesthetistWorkstation/ETregister
目录结构:
2.详细错误如下:
ERROR Failed to compile with 1 errors
上午10:28:53
This dependency was not found:
* @/views/anesthetistWorkstation/Etregister in ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/views/anesthetistWorkstation/patientsList/view.vue
To install it, you can run: npm install --save @/views/anesthetistWorkstation/Etregister
3.按照错误提示执行命令 npm install --save @/views/anesthetistWorkStation/ETregister(安装
@/views/anesthetistWorkStation/ETregister 模块)。仍然报错
PS D:\work\comentest> npm install --save @/views/anesthetistWorkStation/ETregister
所在位置 行:1 字符: 20
+ npm install --save @/views/anesthetistWorkStation/ETregister
+ ~
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : UnrecognizedToken
二、原因
1.开始时,真的是一头雾水,提示为什么是安装一个模块?这两个组件都是自定义的呀……
2.现在才明白,是我自己把 引入组件的路径名少写了一级,在本地找不到这个组件,所以自动去node_modules里找了,结果node_modules里面找,也找不到,所以报错了。
三、解决方法
1.引入方式:
import ETregister from "@/views/anesthetistWorkstation/ETregister/view.vue
在路径后面加上 view.vue
到此This dependency was not found已经解决了。
2.使用引入的ETregister组件
<etregister></etregister>
1) 组件不能正常显示,控制台又报错 :不知道组件etregister
2) 更改为:
<e-tregister></e-tregister>
或
<ETregister></ETregister>
组件可以正常显示了。
四、总结
1.使用自己写的东西,报错:This dependency was not found,请检查自己写的路径是否正确。由于初学,误以为 一个目录下只有一个文件,引入文件时不必具体到文件名称。
2.建议引入文件时,尽量具体到要使用的文件名称。除非在配置文件中配置了可以省略部分路径。
3.报错:Unknown custom element:xxx,不能识别某个组件,请检查使用组件的方式。
import ABc from 'xxxx';
方式一:直接使用引入的名称(和React类似)
<ABc></ABc>
尽量使用驼峰命名法
方式二:使用连字符连接的组件名称:每个单词之间用连字符连接,大写字母改成小写
<a-bc></a-bc>
/*
希望对你有帮助!
如有错误,欢迎指正!
*/