解决nuxt 自定义全局方法,全局属性,全局变量的问题


Posted in Javascript onNovember 05, 2020

注意 ,这个 在 asyncData 还是不能用的 ,在mounted等其他生命周期里面可以,

asyncData 里因为获取不到this他在组件初始化前执行的,如果找到方法我会继续更新到下一篇博客

好现在说步骤,在plugins 文件夹里新增一个 commom.js名字你自己取

commom.js 测试代码

import Vue from 'vue'
var comsys= {
  install(Vue){
    Vue.prototype.comsys = {
     val:function(val){
     return val
     }
    };
    
  }
}
Vue.use(comsys);

nuxt.config.js里 添加

plugins: 

[
   { src: '~/plugins/commom.js', ssr: false }
],

引用的页面添加

mounted () {  
 alert(this.comsys.val(1)); 
}

恩,这样就行了~

这个是实例方法 其他的属性 对象 可以参考 vue的官网

补充知识:Nuxt项目使用全局变量,函数,混合

当在Nuxt项目使用CSS预处理语言时,很有需要在全局添加变量,函数或者混合,这样子在项目的任何一个地方都可以使用,那怎么做呢?

首先下载@nuxtjs/style-resources

npm install @nuxtjs/style-resources

之后在nuxt.config.js里添加

//.......
 modules: [
  '@nuxtjs/style-resources'
 ],
 styleResources: {
  sass: [],
  scss: [],
  less: [],
  stylus: []
 }
//.......

例如,你的使用stylus预处理语言,你在/asset/css下有个variable.styl变量文件,可以这样

export default {
 modules: ['@nuxtjs/style-resources'],
 styleResources: {
  stylus: './assets/css/variable.styl'
 }
}

这样就在全局引入了变量,如果想引入多个文件可以把路径改为./assets/css/global/*.styl,把你想要全局注入的文件放在global目录下就行了

注意:

这里的路径不能使用~或者@等路径别名

千万不要用这种方式注入真正的样式文件,这种方式仅仅是用来注入变量,函数,混合等声明式内容,而不是真正的样式;如果你那样做,会在每个组件内注入难以控制的全局样式,你会很混乱的

以上这篇解决nuxt 自定义全局方法,全局属性,全局变量的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 入门·JavaScript 具有全范围的运算符
Oct 01 Javascript
JavaScript 异步调用框架 (Part 3 - 代码实现)
Aug 04 Javascript
JavaScript中清空数组的三种方法分享
Apr 07 Javascript
HTML上传控件取消选择
Mar 06 Javascript
js简单实现根据身份证号码识别性别年龄生日
Nov 29 Javascript
javascript中arguments,callee,caller详解
Mar 16 Javascript
js实现浏览器倒计时跳转页面效果
Aug 12 Javascript
浅谈vue自定义全局组件并通过全局方法 Vue.use() 使用该组件
Dec 07 Javascript
详解js的作用域、预解析机制
Feb 05 Javascript
如何利用ES6进行Promise封装总结
Feb 11 Javascript
layer弹出层扩展主题的方法
Sep 11 Javascript
jQuery实现本地存储
Dec 22 jQuery
vue实现点击出现操作弹出框的示例
Nov 05 #Javascript
nuxt 自定义 auth 中间件实现令牌的持久化操作
Nov 05 #Javascript
Vant 在vue-cli 4.x中按需加载操作
Nov 05 #Javascript
前端vue如何使用高德地图
Nov 05 #Javascript
解决vue项目中遇到 Cannot find module ‘chalk‘ 报错的问题
Nov 05 #Javascript
vue 全局封装loading加载教程(全局监听)
Nov 05 #Javascript
vant组件中 dialog的确认按钮的回调事件操作
Nov 04 #Javascript
You might like
3个PHP多维数组转为一维数组的方法实例
2014/03/13 PHP
使用pthreads实现真正的PHP多线程(需PHP5.3以上版本)
2014/05/05 PHP
ThinkPHP实现非标准名称数据表快速创建模型的方法
2014/11/29 PHP
以文件形式缓存php变量的方法
2015/06/26 PHP
PHP编程获取图片的主色调的方法【基于Imagick扩展】
2017/08/02 PHP
php解决约瑟夫环算法实例分析
2019/09/30 PHP
javascript 设置文本框中焦点的位置
2009/11/20 Javascript
Extjs4 消息框去掉关闭按钮(类似Ext.Msg.alert)
2013/04/02 Javascript
js onload事件不起作用示例分析
2013/10/09 Javascript
javascript下拉框选项单击事件的例子分享
2015/03/04 Javascript
解读Bootstrap v4 sass设计
2016/05/29 Javascript
记一次webpack3升级webpack4的踩坑经历
2018/06/12 Javascript
JS校验与最终登陆界面功能完整示例
2020/01/13 Javascript
vue实现扫码功能
2020/01/17 Javascript
[00:57]林俊杰助阵DOTA2亚洲邀请赛
2015/01/28 DOTA
[05:26]TI10典藏宝瓶套装外观展示
2020/07/03 DOTA
Python 第一步 hello world
2009/09/25 Python
python中pygame模块用法实例
2014/10/09 Python
Python字典简介以及用法详解
2016/11/15 Python
微信跳一跳自动运行python脚本
2018/01/08 Python
Python基于opencv的图像压缩算法实例分析
2018/05/03 Python
一篇文章搞懂Python的类与对象名称空间
2018/12/10 Python
Python设计模式之组合模式原理与用法实例分析
2019/01/11 Python
Django中间件基础用法详解
2019/07/18 Python
Tensorflow实现神经网络拟合线性回归
2019/07/19 Python
关于Flask项目无法使用公网IP访问的解决方式
2019/11/19 Python
树莓派升级python的具体步骤
2020/07/05 Python
利用python爬取有道词典的方法
2020/12/08 Python
css3之UI元素状态伪类选择器实例演示
2017/08/11 HTML / CSS
国际经济贸易专业自荐信
2014/06/13 职场文书
教师求职信
2014/06/17 职场文书
群众路线教育实践活动实施方案
2014/10/31 职场文书
户外拓展训练感想
2015/08/07 职场文书
导游词之海南天涯海角
2019/12/05 职场文书
Golang map映射的用法
2022/04/22 Golang
python实现商品进销存管理系统
2022/05/30 Python