cocos creator 插件 怎么升级vue,有些语法低版本不支持

cocos creator 插件 怎么查看vue版本 或者怎么升级 像v-else-if这样的判断语句在vue2.1.0新增的,creator的现在不支持

请问你的 CocosCreator 编辑器版本是多少?

查看编辑器自带的vue版本(2.x中自带了,3.x没得)
image

建议不要使用编辑器自带的vue,这也是3.x中为啥不再提供vue的原因,升级会带来很多问题

自己集成下vue即可,3.x版本,可参考我的个人文章,2.x同理

https://mp.weixin.qq.com/s/6Zk8YwHq6S-MJR06L415hw

3赞

2.4.4

好的,那就用上面的方案吧。

vue2.6.14 vue.js
vue 2.6.12也试了,不行
使用runtime.js时候报错 调用undefined.toLowerCase()

在Creator2.x版本中,必须使用协议路径packages://加载文件,也就是你代码中注释的第19行

按照第19行的写法,你的插件名字应该叫做map-editor,并且在插件的根目录下有个vue.js的文件

如果不行的话,试试
Editor.require('packages://map-editor/vue.js')

如果还不行,这时候就要考虑参数问题,即packages://map-editor/vue.js是否能够获得真正的文件路径,我们可以尝试这样写

const Fs = require('fs')
let url = Editor.url('packages://map-editor/vue.js');
if(url){
   if(Fs.existsSync(url)){
      let vue = Editor.require(url);
      if(vue){
            // 从此我又可以愉快的撸代码了
      }else{
           // 这我也没办法了,我已经尽力了,保重!兄弟!
      }
   }else{
        // 文件真的不存在,卧槽!
  }
}else{
   // 编辑器真找不到这个文件,兄弟,别难为编辑器了
}

在Creator3.x版本中,是可以使用相对路径的

不好意思,没注意前两条,那个解决了,require没问题,,出问题的最后一条,在new vue的时候。

  1. 我用这是我从node_modules里面直接拷贝了vue.js出来用,new vue 报错,shadowRoot nodes not cloneable
  2. 用packags://node_modules/vue ,报错也是 new vue 的时候,报错的文件路径是 vue.runtime的文件,报错是 undefined.toLowerCase()

这里的确存在这个坑,教程中也有提到

image creator2.4.5
image

2.x参考

http://docs.cocos.com/creator/manual/zh/extension/work-with-vue.html

this.shadowRoot

哥哥,把你的代码贴全
你的new vue(options)的具体参数是怎么写的?
大小写拼对了么


既然shadowRoot,vue不接受,那就换shadowRoot里面的元素,具体怎么获取shadowRoot里面的元素,参考这里

http://docs.cocos.com/creator/manual/zh/extension/reference/panel-reference.html#dependencies