wilddog & arcgisAPI & vue-cli插件,天坑之路(三)

背景交代

虽然我现在只是npm install wilddog了一下下,但是我有预感,不会那么顺利的。我就是知道不会那么顺利,看我现在才来填坑。 wilddog的用法官网上说得很清楚并且还有视频我就不多说了,还没有深入使用,暂时先不说了。

问题

.vue文件一个组件就是自己单独的部分,当我在第一个.vue文件中创建了ref连接wilddog数据库对象以后,当我需要在其他.vue文件中使用的时候,怎么办?

解决方法

  • 首先,我想的是在第二个.vue文件中在创建一个ref连接数据库就可以了,毕竟都是连接数据库,没有什么问题吧。想当然的失败了哦。pass,当然有可能是我使用有问题,如果正确打开方式,请一定要告诉我,不枉费我折腾了两天了。
  • 还有就是肯定可以解决的vuex,但是我觉得杀鸡焉用宰牛刀,并且如果继续用别人的插件,那我就不会明白原理了。
  • 那么这样呢?创建一个全局的ref对象就可以,那么怎么创建呢?直接百度的话vue-cli创建全局变量,就会有很多答案,我亲自测试成功的就是 点击这里

    其实就是 创建一个vue插件

    vue插件原理

    vue文档

  • 创建插件的方法:
    • 定义一个操作对象,里面包含你所需要的类,变量等var refHelper = { ref:myRef} 在refHelper里面你可以添加你想要的方法全局变量等。
    • 通过export default导出export default refHelper;
    • 在main.js中引入import ref from ‘./assets/js/Tool‘
    • 将引入的对象挂在到vue原型上,注意挂载的一定是你设置的refHelper对象Vue.prototype.refHelper = ref
    • 使用:通过this.refHelper.ref就可以在文件的任意位置使用了,我没有猜错的话
    • 这种写法本质应该都是一样的,都是挂在到vue原型上,感觉更好看一点

贴代码

// main.js
import ref from ‘./assets/js/Tool‘
// Vue.prototype.refHelper = ref //方法一
Vue.use(ref)

// Tool.js
import Wilddog from ‘wilddog‘

 // 初始化
 var config = {
   authDomain: "lorry.wilddog.com",
   syncURL: "https://lorry.wilddogio.com"
 };
 Wilddog.initializeApp(config);
 var myRef = Wilddog.sync().ref();

// 第一种方法
// var refHelper = {
//   ref: myRef
// }
// export default refHelper;

export default{
  install(Vue,options)
  {
    Vue.prototype.ref = function () {
      return myRef;
    }
  }
}

小结

不知道还会遇到什么坑爹的事情,所以只是小结。发现自己还是只懂使用工具,却没有认真研究过工具的原理,所以下来也认真阅读了es6的书,vue的组件部分,只能算是有一点点小的收获,大三实习的压力好大呀,学无止境呢

时间: 2024-10-03 05:31:45

wilddog & arcgisAPI & vue-cli插件,天坑之路(三)的相关文章

Vue CLI 3搭建vue+vuex 最全分析

一.介绍 Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统.有三个组件: CLI:@vue/cli 全局安装的 npm 包,提供了终端里的vue命令(如:vue create .vue serve .vue ui 等命令) CLI 服务:@vue/cli-service是一个开发环境依赖.构建于 webpack 和 webpack-dev-server 之上(提供 如:serve.build 和 inspect 命令) CLI 插件:给Vue 项目提供可选功能的 npm 包 (如

vue-cli&webpack&arcgis API For JS的天坑之路(一)

写在前面的话(背景交代) 最近参加esri比赛,但是又想趁机接触前端最新的一些框架和技术,所以,毅然决然的踏上了这个天坑之路.我现在只是成功的把地图渲染出来了,所以,我也不知道会不会有天坑二的出现. gituhb项目地址 新建vue-cli工程 如何用vue-cli + webpack构建一个工程,网上一大堆的代码,我就不赘述了.比如这个就是很好地入门文章,先要做的还是要把vue-cli和webpack的模块划分好,框架搭建好,然后才是我要说的,地图部分. 如何在vue-cli,webpack中

Vue CLI 3.x搭建Vue项目

一.Node安装 windows 1. Node.js (>=8.9, 推荐8.11.0+) Node官网下载 .msi 文件,按步骤下载安装即可. 安装完之后在cmd中输入 node -v,若显示版本号,则说明安装成功. 2. Git(命令行终端) Git官网下载安装即可. Linux apt-get install nodejs node -v apt-get install npm npm -v npm命令1.得到原本的镜像地址 npm get registry 2.设置成淘宝 npm c

在vue cli 3脚手架里引入tinymce 5富文本编辑器

本文主要讲的是在Vue cli 3脚手架搭建的项目里如何引用Tinymce 5富文本编辑器. 请注意识别"版本号",不同版本的配置细节有所不同. 1. tinymce的安装 1. 安装tinymce-vue npm install @tinymce/tinymce-vue -S 2. 安装tinymce npm install tinymce -S 3. 下载中文语言包 tinymce提供的语言包很多,选择下载中文语言包 2. 使用方法 1. 文件操作 在项目根目录的public目录下

vue cli中环境变量和模式

环境变量配置 环境变量可以在以下文件中配置: .env # 在所有的环境中被载入 .env.local # 在所有的环境中被载入,但会被 git 忽略 .env.[mode] # 只在指定的模式中被载入 .env.[mode].local # 只在指定的模式中被载入,但会被 git 忽略 (.local优先于.env生效) 文件内部使用键值对的方式对变量进行配置 被载入的变量将会对 vue-cli-service 的所有命令.插件和依赖可用,同时为一个特定模式准备的环境文件的 (例如 .env.

Jquery学习之路(三) 实现弹出层插件

弹出层的应用还是比较多的,登陆,一些同页面的操作,别人的总归是别人的,自己的才是自己的,所以一直以来想写个弹出层插件.不多废话,直接开始吧! 不想看可以在这里直接下载源码xsPop.zip 1:遮罩层 要弹出层,先要用一个遮罩层挡在下面的页面,此遮罩层是全屏的,页面滚动也要有,所以设置 position: fixed;还要有透明效果,下面是我定义的遮罩层css,取名mask .mask { position: fixed; width: 100%; height: 100%; backgroun

使用vue cli开发项目中遇到的坑

一.部署文件 使用vue cli 开发项目,执行npm run build命令生成dist静态文件,将dist文件包放到服务器中即可. 刚接触webpack,不知道怎么部署前端文件,原以为需要将app文件上传,在 inux上安装node,以及npm install 一系列的包,捣鼓了很久,发现只需要执行 npm run build 将源码打包成一个静态文        文件即可,上传静态文件dist,将 controller指向index.html. 二.跨域问题 实行前后端分离,使用vue i

chrome浏览器的VUE调试插件Vue.js devtools

chrome浏览器的VUE调试插件Vue.js devtools 应用商店直接安装 安装成功后在VUE文件打开可以直接调试: 提示效果如下: F12进入调试状态即可: 安装中出现的问题: 插件安装后无法使用,出现vue.js not detected提示的解决办法 找到插件的安装目录: (可以通过id搜索ID:nhdogjmejiglipccpnnnanhbledajbpd) C:\Users\liangsuya\AppData\Local\Google\Chrome\User Data\Def

Vue自定义插件方法大全

新年第一天首先祝大家新年快乐,心想事成! 1.利用根实例构造函数的原型 //在构造函数的原型链上添加自定义属性 Vue.prototype.test = 'pomelo' //在其他组件中调用 console.log(this.test) //pomelo 通过原型链添加方法,同理 2.通过Vue的插件机制 (常用方法) (1) 以util.js为插件文件,则需在项目入口文件main.js中引入: import Utile from './lib/utils' Vue.use(Utile) (2

vue的插件使用

插件通常是为Vue添加全局功能,vue的官网介绍了5中添加插件的方法. vue的插件有个公开方法install.第一个参数是Vue构造器,第二个参数是一个可选的选项对象. 在plugin.js中可以这样: export default { install(Vue,options){ Vue.prototype.localStorage = { ... } } } 在入口文件main.js中引入: //Vue的插件(即全局方法) import MyPlugin from './assets/js/