当前位置: 首页 > news >正文

erp系统哪个品牌最好seo快速排名百度首页

erp系统哪个品牌最好,seo快速排名百度首页,黄冈网站建设流程,网页制作团队文章目录前言vue项目初始化参考文档出现的问题Delete ␍eslint(prettier/prettier)eslint 单双引号,末尾分号(不建议使用,因为原本使用eslint就是为了美化代码)安装axios执行命令添加配置文件在main.js配置全局调用安装路由安装状态管理vuex安装lessType…

文章目录

  • 前言
  • vue项目初始化
    • 参考文档
    • 出现的问题
      • Delete `␍`eslint(prettier/prettier)
      • eslint 单双引号,末尾分号(不建议使用,因为原本使用eslint就是为了美化代码)
    • 安装axios
      • 执行命令
      • 添加配置文件
      • 在main.js配置全局调用
    • 安装路由
    • 安装状态管理vuex
    • 安装less
      • TypeError: this.getOptions is not a function
      • warning delete `.. Replace `·· function` prettier/prettier

前言

这种方式创建的项目在使用elementplus的时候,语法上会有eslint验证错误,需要禁用eslint验证
在这里插入图片描述

vue项目初始化

参考文档

https://www.freesion.com/article/70671403784/

出现的问题

Delete eslint(prettier/prettier)

原因:https://www.cnblogs.com/jasonboren/p/12337002.html
解决办法1:https://blog.csdn.net/LPLIFE/article/details/105655178
在控制台执行命令:

git config --global core.autocrlf false

然后把本地代码提交,删掉本地仓库,重新拉取代码,就没问题了
解决办法2(不推荐,因为每个文件都需要改):https://www.cnblogs.com/victorlyw/p/13589682.html
在这里插入图片描述

eslint 单双引号,末尾分号(不建议使用,因为原本使用eslint就是为了美化代码)

在项目根目录添加文件.prettierrc.json
解决项目代码中单引号变双引号,以及末尾自动添加分号

{"singleQuote": true,"semi": false
}

安装axios

执行命令

npm install axios -S
npm install qs -S

添加配置文件

config.js

export const baseURL = '/api'
export const rootFile = '/myApp/'

server.js

import Axios from 'axios'
import { baseURL } from './config.js'
import { Toast } from 'vant'
import qs from 'qs'
// import router from '../router/index'// 请求地址
Axios.defaults.baseURL = baseURL
// 超时时间
Axios.defaults.timeout = 15000
// 允许携带cookie
Axios.defaults.withCredentials = true
// 请求头
Axios.defaults.headers = {// 'Content-Type': 'application/json;charset=UTF-8'// 'Content-Type': 'application/x-www-form-unlencoded'// 'Content-Type': 'multipart/form-data''Content-Type': 'application/x-www-form-urlencoded'
}// 发送到服务器前修改请求数据
Axios.defaults.transformRequest = [function(data) {return JSON.stringify(data)}
]/***loading配置*/
let loading = {load: null,showLoading: true,loadingMsg: '加载中...'
}/*** 请求拦截器*/
Axios.interceptors.request.use(res => {if (loading.showLoading) {loading.load = Toast.loading({duration: 0,message: loading.loadingMsg,forbidClick: true})}return res},error => {errorMsg(error)return Promise.reject(error)}
)/*** 返回拦截器*/
Axios.interceptors.response.use(res => {if (loading.showLoading) {Toast.clear()loading.showLoading = false}failMsg(res.data)return res},error => {errorMsg(error)return Promise.reject(error)}
)/*** putService put请求* @param {*} url* @param {*} params* @param {*} showLoading*/
export const putService = (url = '', params = {}, showLoading = true) => {loading.showLoading = showLoadingreturn new Promise((resolve, reject) => {Axios.put(url, qs.stringify(params)).then(res => {const { data } = resresolve(data)}).catch(err => {errorMsg(err)reject(err)})})
}/*** getService get请求* @param {*} url* @param {*} params* @param {*} showLoading*/
export const getService = (url = '', params = {}, showLoading = true) => {loading.showLoading = showLoadingreturn new Promise((resolve, reject) => {Axios.get(url,{ params: params },{headers: { 'Content-Type': 'application/x-www-form-urlencoded' }}).then(res => {const { data } = resresolve(data)}).catch(err => {errorMsg(err)reject(err)})})
}/*** postFile 文件请求* formData示例* let formData = new FormData()* formData.append("username", '张三')* formData.append("file", file)* @param {*} url* @param {*} formData* @param {*} showLoading*/
export const postFileService = (url = '',formData = {},showLoading = true
) => {loading.showLoading = showLoadingreturn new Promise((resolve, reject) => {Axios.post(url, formData, {headers: { 'Content-Type': 'multipart/form-data;' }}).then(res => {const { data } = resresolve(data)}).catch(err => {errorMsg(err)reject(err)})})
}/*** postService post请求* ps:需要注意qs.stringify* @param {*} url* @param {*} params* @param {*} showLoading*/
export const postService = (url = '', params = {}, showLoading = true) => {loading.showLoading = showLoadingreturn new Promise((resolve, reject) => {Axios.post(url, qs.stringify(params), {headers: { 'Content-Type': 'application/x-www-form-urlencoded' }}).then(res => {const { data } = resresolve(data)}).catch(err => {errorMsg(err)reject(err)})})
}/*** postJsonService post请求* ps:需要注意qs.stringify* @param {*} url* @param {*} params* @param {*} showLoading*/
export const postJsonService = (url = '', params = {}, showLoading = true) => {loading.showLoading = showLoadingreturn new Promise((resolve, reject) => {Axios.post(url, params, {headers: { 'Content-Type': 'application/json;charset=UTF-8' }}).then(res => {const { data } = resresolve(data)}).catch(err => {errorMsg(err)reject(err)})})
}/*** 服务器编码*/
export const SERVER_CODE = {// 响应成功SUCCESS: 200,// 响应失败ERROR: 500
}/*** 异常错误提示* @param {*} err*/
function errorMsg(err) {// 关闭loadToast.clear()loading.showLoading = false// 解析错误let title = '系统异常'if (err.message) {title = err.message}Toast.fail(title)
}/*** 普通错误提示(请求成功,但是返回非200)* @param {*} res*/
function failMsg(res) {if (res.infoCode !== SERVER_CODE.SUCCESS) {Toast.fail(res.msg)}
}

api-module-public.js

export default {hello() {return "hello world!";},
};

global-api.js

import apiModulePublic from "@/api/module/api-module-public";export default {public: apiModulePublic,
};

在main.js配置全局调用

https://blog.csdn.net/block_xu/article/details/111150883
main.js

import { createApp } from "vue";
import App from "./App.vue";
import globalApi from "@/api/global-api";
const app = createApp(App);
// 配置全局变量
app.config.globalProperties.$globalApi = globalApi;
app.mount("#app");

调用方式:this.$globalApi.public.hello()

安装路由

https://blog.csdn.net/qq_31754523/article/details/108830149

npm install vue-router --save

安装状态管理vuex

这里使用了模块化 + vuex-persistedstate
首先,安装vuex和persistedstate

npm install vuex --save
npm i -S vuex-persistedstate

在这里插入图片描述

store-module-base.js

export default {namespaced: "StoreModuleBase",state: {welcomeMessage: "欢迎━(*`∀´*)ノ亻!",},mutations: {SET_WELCOME_MESSAGE(state, param) {state.welcomeMessage = param;},},getters: {getWelcomeMessage(state) {return state.welcomeMessage;},},actions: {setWelcomeMessage({ commit }, param) {commit("SET_WELCOME_MESSAGE", param);},},
};

index.js
这个文件,createStore这里参考了这篇文章:https://www.freesion.com/article/70671403784/

import { createStore } from 'vuex'
import persistedState from "vuex-persistedstate";
// 模块
import StoreModuleBase from "./module/store-module-base";/*** @vuex-persistedstate* 数据持久化,默认localStorage 参考:https://www.jianshu.com/p/c22861ec5f21*/
export default createStore({plugins: [persistedState({storage: window.sessionStorage,}),],modules: {StoreModuleBase,},
});

main.js
最后是main.js

import { createApp } from "vue";
import App from "./App.vue";
import globalApi from "@/api/global-api";
import router from "@/router";
import store from "@/store"
const app = createApp(App);// 全局变量
app.config.globalProperties.$globalApi = globalApi;// 安装组件
app.use(router).use(store);app.mount("#app");

如果报错:Uncaught TypeError: Object(…) is not a function
可以安装一下这个:vue add vue-next
在这里插入图片描述
console.log(this.$store.state.storeModuleBase.welcomeMessage);
在这里插入图片描述

安装less

npm install less less-loader --save-dev

配置less全局变量
https://www.cnblogs.com/linbudu/p/11445137.html

TypeError: this.getOptions is not a function

https://blog.csdn.net/qq_42430948/article/details/113552673

原因: less-loader安装的版本过高
解决方案: 
npm uninstall less-loader
npm install less-loader@6.0.0

warning delete .. Replace ·· function` prettier/prettier

https://www.cnblogs.com/zan0627/p/14097046.html

在.eslintrc.js文件中配置关闭Prettier;
在rules中增加一行:"prettier/prettier": "off"
重启后生效
http://www.lbrq.cn/news/2381347.html

相关文章:

  • 渗透wordpress论坛seodao cn
  • 2018春节放假安排 网站建设公司品牌宣传
  • 溧阳有没有做网站的公司关键词排名怎么做上去
  • 国家和城乡建设部网站首页网络软文范例
  • 益阳市建设局网站是什么结构优化
  • 福清市住房和城乡建设局网站疫情最新情况 最新消息 全国
  • 网站设计红色表示什么营销手段有哪些方式
  • 元谋网站建设重庆网站建设哪家好
  • c 做网站微信公众号运营推广方案
  • 许昌建设委员会网站百度搜索风云榜明星
  • 地方商城网站上海搜索优化推广
  • 怎么给QQ名片做网站以下属于网站seo的内容是
  • 如何做融资网站网站备案查询工信部
  • 公司网站优化怎么做网站站内推广怎么做
  • 做网站的的广告词seo产品推广
  • 免费查找资料的网站东莞今日头条新闻
  • 长沙网站搭建首选智投未来微信朋友圈推广
  • 南宁网站优化排名推广seo优化工具软件
  • 网页布局网站快速排名优化系统
  • 深圳网站设计制作元北京专业seo公司
  • 网站产品展示系统百度推广总部客服投诉电话
  • 微信开发者工具文档福州seo推广公司
  • 模板网站的缺点武汉百度信息流广告
  • wordpress聊天室插件seo是什么字
  • 甜品网站模板代码杭州网站seo价格
  • 才做的网站怎么搜不到如何在网上做销售推广
  • 做网站的三个软件深圳seo优化服务
  • 北京市建设教育协会网站论坛推广的步骤
  • 什么网站可以找人做系统soe搜索优化
  • 涪陵做网站百度推广的几种方式
  • 读书笔记:《动手做AI Agent》
  • React事件处理
  • 【中等】题解力扣22:括号生成
  • 基于dcmtk的dicom工具 第二章 图像接受StoreSCP(2)
  • day053-初识docker与基础命令
  • k8s之Attach 和 Mount