vue2.0设置全局变量的源码如下:
VUE介绍:
Display Options显示选项:包括线框显示选项框,填充框,线框,平面阴影和平滑阴影。每个对象及显示窗口均可以对这些选项进行单独设置。雾,场景灯光,阴影和视频帧导游也可以启用Open GL的显示。
Dynamic Plant Display Optimization动态植物表现优化:植物预览质量可以根据表现植物的数量与复杂性,和用户设置如目标帧率,在全球基础上进行动态调整。在您在显示选项中设置的限制范围内,引擎会尽量表现最多植物细节。
OpenGL Sky Preview with Clouds OpenGL的天空与云预览:天空预览使用逐步细化方法来提供细节逐渐丰满的天空与云的画面 (为获得最佳效果,此预览采用多CPU计算)。如需要,云预览可以禁用。现在相机曝光在OpenGL中可以自动体现,以提供更精确的场景预览 (仅限着色器引擎)。此选项亦可禁用。
Interactive Cloud Control交互式云控制:云图层可用类似常规对象的处理方式处理。当图层在世界之窗浏览器中出现时,可以用标准操作线框对其进行移动,旋转和更改尺寸。您也可以用Vue的标准动漫制作工具来控制云的运动和速度。
Vue3 的全局变量目前百度前面的全部是采用先。
app.config.globalProperties.$axios = $axios。
随后利用 getCurrentInstance 取得 ctx 或 proxy 来获取全局变量的。
const { ctx } = getCurrentInstance() as any。
ctx.$axios.get。
但事实上官方是不建议应用使用 getCurrentInstance 方法的,
所以我更加推荐以下的方法去存储和获取全局变量,即依赖注入的方式。
首先在 main.js 中
const app = createApp(App)。
// 配置全局变量 页面中使用 inject 接收。
app.provide('global',{。
store,
axios
})
app.mount('#app')。
将多个变量混同时注入的目的是为了减小依赖注册及接受的工作量。
在需要接受的页面使用 inject 接受 (js项目请去掉类型声明)
<script lang="ts" setup>。
import { inject } from 'vue';。
// 获取全局对象`
const global:any = inject('global')。
/**目前标准异步写法 */
global.axios('/harmony/getType').then((result:any) => {。
if(result.success){。
list.value = result.data。
}
}).catch((err:any) => {。
console.log(err);。
});
</script>。
采用这种方法在全局变量的创建上会更加的方便 , 而且不用担心会出现像axios在使用globalProperties设置为全局对象后丢失$axios对象只剩$http之类的问题。
其实,变量根据其在程序中的定义点不同,分为局部和全局变量。
在函数内部定义的变量为局部变量;
在所有函数外部定义的变量为全局变量。
全局变量的作用域是从该变量定义的位置开始,直至源文件借宿。在同一文件中的所有函数都可以引用为全部变量。
全局变量存储类型一般可以定义为:static型和exterm型,默认为extern型。
而其static型全局变量作用域定义点开始至本源文件内的所有函数,其他源文件内的函数不能使用;extern型全局变量作用域为定义点开始至源文件内的所有函数,同时可以被其他源文件内的函数使用,在使用之前要加外部说明,关键字仍然是extern.。
在main.js 中引入 config.js。
import defines from './config'Vue.prototype.defines = defines。
config.js 的内容如下:
export default { name: 'Who',。
sex: 'Male',
setname (newName) {。
this.name = newName。
console.log('姓名已经改变')。
}
然后在调用全局变量的vue的html中加入:
{{ this.defines.name }}。
就可以显示全局变量了。
修改的方法为:
在调用全局变量的vue的script中加入:
this.defines.setname('小强')。
console.log(this.defines.name)。
就能修改了。
在main.js里进行全局注册。
Vue.prototype.funcName。
function
(){}
在所有组件里可调用
this.
funcName();
以上这篇vue
自定义全局方法,在组件里面的使用介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:浅谈vue自定义全局组件并通过全局方法。
Vue.use()
使用该组件自定义vue全局组件use使用、vuex的使用详解详解Vue.use自定义自己的全局组件Vue组件之全局组件与局部组件的使用详解Vue中自定义全局组件的实现方法vue.js内部自定义指令与全局自定义指令的实现详解(利用directive)