1.架构的时候是将参数放在了header里边,所以基本上前端这边不需要在组件中单独传参,那么有人就会问为什么要放在header里边呢?将变量放在 header文件中的原则是:多个源文件需要访问同一个变量,就将该变量定义在 header文件中,并在需要访问该变量的源文件中包含该 header文件。这样可以确保所有源文件都使用相同的变量定义,避免了变量定义不一致的问题。将所有变量放在一个 header文件中的好处是可以方便地在多个源文件中访问这些变量。这样可以避免在不同的源文件中重复定义相同的变量,从而减少代码冗余和错误。另外,将变量放在 header文件中还可以提高代码的可读性和可维护性,因为可以更容易地查找和修改变量定义。
import { defineStore } from 'pinia'
const nowMonth = new Date().getMonth() + 1
export const headersStore = defineStore('headers', {
state: () => {
return {
language_id: 'zh-cn', // 语言编码
type_id: '', // 类型(1:全球业务2:全球财务3:全球供应链4:直销商)
year: '', // 年份
month:
nowMonth > 10 ? nowMonth.toString() : '0' + nowMonth.toString() || '00', // 月份(参数值00查询全年)
authority_id: '', // 权限ID
distributor_key: '', // 经销商key ,用于经销商的任何接口的鉴权
scope_code: '', // 国家简码以及区域编码以及城市简码
point_code: '', // 点位编码
every_code: '', // 区分全球区域对比或国家对比 0各个区域,1 各个国家 默认空
coefficient_addition: 1, // 加成系数(彩蛋)
}
},
actions: {
// 语言编码
setLanguageId(language_id: string) {
this.language_id = language_id
},
// 类型(1:全球业务 2:全球供应链 3:全球财务4:直销商)
setTypeId(type_id: string) {
this.type_id = type_id
},
// 年份
setYear(year: string) {
this.year = year
},
// 月份(参数值00查询全年)
setMonth(month: string) {
this.month = month
},
// 权限ID
setAuthorityId(authority_id: string) {
this.authority_id = authority_id
},
// 经销商key ,用于经销商的任何接口的鉴权
setDistributorKey(distributor_key: string) {
// 两次url
this.distributor_key = decodeURIComponent(
decodeURIComponent(distributor_key)
)
},
// 设置国家或区域编码
setScopeCode(scope_code: string) {
this.scope_code = scope_code
},