vue页面使用其他文件数据

vue中data(){ return{ }}里面的数据如何写到另一个js文件然后再调佣

  • 在项目中我们经常会把一些公用的常用的数据放在一个文件里,那么其他vue或者js文件怎么引用这些数据呢?如下:

一、export default

公用数据文件

// 担保类型
let guaranteeType = [{
    text: '抵押',
    value: '01'
  },
  {
    text: '一般保证',
    value: '03'
  },
  {
    text: '信用',
    value: '04'
  },
  {
    text: '其他',
    value: '06'
  }
]
 
export default guaranteeType

引用文件

img


created(){
    console.log(comData.guaranteeType)
}

二、export

1、建立JS文件 data.js

// api/data.js
let listState = [
    { label: "设计中", value: "设计中" },
    { lable: "重新修改", value: "重新修改" },
    { label: "审阅中", value: "审阅中" },
    { lable: "已审批", value: "已审批" },
    { lable: "已发放", value: "已发放" },
    { lable: "已停用", value: "已停用" },
    { lable: "已报废", value: "已报废" }
  ];
 
  export {
    listState, 
  }

2、在使用页面引入数据

  • 在script标签内部引入
// data 为文件名
import {listState} from '@/api/data.js'
  • data内部定义变量
data() {
    return {
    listState:[],
  };
},
  • 使用create() 生命周期函数赋值
created() {
  this.listState = listState
},
  • 循环遍历
v-for="(item,i) in listState

简化版

// api/boutique/more.js
export default[
  {src:'这里放img',title:'放标题',id:'地址'},
  {src:'这里放img',title:'放标题',id:'地址'},
  {src:'这里放img',title:'放标题',id:'地址'},
]
<u-grid-item v-for="(item, i) in list" @click="handleId(item.id)">
  <img class="imgs" :src="item.src" alt="" />
  <view class="grid-text">{{ item.title }}</view>
</u-grid-item>

<script>
import  listState from '@/api/boutique/more.js';
export default {
  data() {
    return {
      list: listState
    };
  },
}
</script>

3注意点

export default 与 export 的区别

  • export 与 export default 可用于导出常量、函数、文件、模块
  • 其它文件或模块中通过 import (常量 | 函数 | 文件 | 模块)名 from ‘path’ 的方式将其导入
  • export、import 可以有多个,但是 export default 只能有一个
  • 使用 export 导出,在导入时要加{ },export default 不需要

参考

posted @ 2022-04-29 09:39  天使阿丽塔  阅读(840)  评论(0编辑  收藏  举报