解决ztree报错init undefined

11 篇文章 0 订阅


报这个错就说明zTree没有正确引进来 ,解决办法是将import导入方式换成require方式。
实际操作:我想在vue-cli中使用zTree,然后就在main.js中引入了“zTree/js/jquery-1.4.4.min.js”,在tree.vue中引入了import $ from 'jquery',以及相关的zTree的资源“zTree/js/jquery.ztree.all.js”,但是会报错说ztree不存在,最后运行成功结果是修改为:
在main.js啥也没引入,在tree.vue中引入 import $ from 'jquery',以及require  "zTree/js/jquery.ztree.all.js"。说明在mian.js中先引入jquery再在tree.vue中引入ztree也无法解决资源加载先后问题,还是需要使用require解决。


1,说法一:在main.js中引入js资源表示全局引入,意思所有的vue文件都可以使用;在某个vue文件中引入资源表示局部引入,只有这个vue文件自己可以使用此资源;
2,说法二:import 了之后 和一个变量是一样的。
之前的引入 script 标签之后 所有的地方都可以用,是因为引入的时候,script 把入口文件挂在 浏览器的 window 对象下了。
一般现在的库都会判断下 引入的条件 是 amd 还是 common-js 还是 browser 还是 node。
默认情况下,node模块,使用common-js标准,即require导入,module.export导出;node的module遵循CommonJS规范,requirejs遵循AMD,seajs遵循CMD。使用import加载资源和require加载资源是有区别的,import加载的资源并不按顺序来运行,而一些具有依赖关系的库比如zTree依赖jquery就不能用import加载,需要使用require加载,因为require是严格按照顺序来加载资源的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值