介绍

项目开发中,会使用一些全局的变量或者方法,这时候我们需要去封装起来,放在一个公共的地方,方便使用。下面介绍三种常用的方法。

挂载Vue.prototype

将一些常用变量和方法挂载在vue的原型上,这样每个vue的对象都会继承下来,可以直接通过this去访问。

  1. //挂载
  2. Vue.prototype.websiteUrl = 'www.along.ink';
  3. Vue.prototype.now = Date.now || function () {
  4. return new Date().getTime();
  5. };
  6. Vue.prototype.isArray = Array.isArray || function (obj) {
  7. return obj instanceof Array;
  8. };
  1. //使用
  2. <script>
  3. export default {
  4. data() {
  5. return {};
  6. },
  7. onLoad(){
  8. console.log('now:' + this.now());
  9. },
  10. methods: {
  11. }
  12. }
  13. </script>

globalData

在uniapp中,globalData用于定义全局变量,使用起来也非常方便

  1. <script>
  2. export default {
  3. globalData: {
  4. text: 'text'
  5. },
  6. onLaunch: function() {
  7. console.log('App Launch')
  8. },
  9. onShow: function() {
  10. console.log('App Show')
  11. },
  12. onHide: function() {
  13. console.log('App Hide')
  14. }
  15. }
  16. </script>
  17. <style>
  18. /*每个页面公共css */
  19. </style>
  1. //赋值
  2. getApp().globalData.text = 'test'
  3. //取值
  4. getApp().globalData.text

Vuex

Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。

https://www.yuque.com/along-n3gko/ezt5z9/kd11ug