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

浙江做网站企业网络

浙江做网站,企业网络,徐州做网站管理的公司,上海 高端 网站建设一、环境搭建 1:首先vite环境安装 npm init vite 或者 yarn init vite 2:输入项目的名字,在这里用vue3_test ? Project name: › vite-project 3:选择项目类型,这里选择Vuets 4:出现下图,初始化基本…

一、环境搭建

1:首先vite环境安装

npm init vite

或者

yarn init vite

2:输入项目的名字,在这里用vue3_test

? Project name: › vite-project

3:选择项目类型,这里选择Vue+ts

4:出现下图,初始化基本创建完成

项目文件目录如下

我们可以发现文件有标红提示,找不到依赖文件,这时候我们到项目目录下,执行一下npm install安装一下相关依赖即可,此时可以看到已经不报错了

现在我们npm run dev启动看看

此时,项目初始化完成

二、配置安装

1、less、scss/sass配置

  less安装

npm install -D less

  scss/sass安装

npm install -D sass

2、router配置

  ①vue-router安装

 npm install vue-router@4 

 yarn install vue-router@4 

②在src下创建一个 routers 文件夹,再创建一个 index.ts 文件

import { createRouter, createWebHistory } from "vue-router";let routes= [{path: '/',name: 'home',component: () => import('../components/home/index.vue')}
]
// 路由
const router = createRouter({history: createWebHistory(),routes
})
// 导出
export default router

这时候可能会出现文件路径标红提示

这是因为未定义 .vue文件的类型,导致 ts 无法解析其类型,在vite-env.d.ts中定义后即可解决

③在main.ts中引入vue-router

import { createApp } from 'vue'
import App from './App.vue'import router from "./routers/index"; const app = createApp(App)app.use(router)  
app.mount('#app')

④在components文件夹下新建home文件夹并新建index.vue,编辑文件如下:

<script setup lang="ts">
import { ref } from 'vue'const msg = ref('Hello World')
const count = ref(10)
</script><template><div><h2>{{ msg }}</h2><h2>{{ count }}</h2></div>
</template><style scoped>
</style>

⑤在App.vue中使用vue-router

<script setup lang="ts">
</script><template><router-view />
</template><style>
#app {font-family: Avenir, Helvetica, Arial, sans-serif;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;text-align: center;color: #2c3e50;margin-top: 60px;
}
</style>

配置完成,当前启动页面如下

3、vuex 配置

    ①安装vuex

npm install vuex -S

yarn install vuex -S

②在 src目录下创建一个store文件夹,在里面新建 index.ts、state.ts、mutations.ts、actions.ts

③index.ts内容如下:

import { createStore } from "vuex";
import state from './state'
import mutations from './mutations'
import actions from './actions'
const store = createStore({state,mutations,actions,modules: {}
})
export default store

④在main.ts中引入store

import { createApp } from 'vue'
import App from './App.vue'import router from "./routers/index"; 
import store from './store';const app = createApp(App)app.use(router).use(store).mount('#app')

4、axios配置

     ①安装axios

npm install axios

     ②封装拦截器intercept,统一拦截请求request

        先在 src 下创建一个 api 文件夹,并添加一个  request.ts  文件

import axios from 'axios';
import Utils from '../util/utils';
import QS from 'qs';
const urlParams = Utils.getUrlParams();
// request拦截器
axios.interceptors.request.use(config => {// 如果你要去localStor获取token,(如果你有)// let token = localStorage.getItem("x-auth-token");// if (token) {//添加请求头//config.headers["Authorization"]="Bearer "+ token// }return config},error => {// 对请求错误做些什么Promise.reject(error)}
)// response 拦截器
axios.interceptors.response.use(response => {// 对响应数据做点什么return response.data},error => {  // 对响应错误做点什么return Promise.reject(error)}
)
/*** get方法 对应get请求* @param {String} url [请求的url地址]* @param {Object} params [请求时携带的参数]* @param {Object} headersParams [请求头]* */ export function get(url:string, params = {}, headersParams={}) {return new Promise((resolve, reject) => {axios.get(url, {params: params, headers: headersParams}).then(response => {resolve(response.data)}).catch(err => {reject(err)})})
}
/*** post方法 对应post请求* @param {String} url [请求的url地址]* @param {Object} urlPrams [请求的url地址校验参数]* @param {Object} params [请求时携带的参数]* @param {Object} headersParams [请求头]* */ export function post(url:string, urlPrams = {}, params = {}, headersParams = {}) {return new Promise((resolve, reject) => {axios.post(QS.stringify({...urlParams}) ? `${url}?${QS.stringify({...urlPrams})}`: '', params,{headers: {...headersParams}} ).then(response => {resolve(response.data)}).catch(err => {reject(err)})})
}

 ③请求数据

   在 api 文件夹,再添加一个  home.ts  文件,

定义接口格式:

export  const  自定义接口名  =  (形参:请求类型)  =>  {return get.方法(路径,{...后端要的参数});
}export  const  自定义接口名  =  (形参:请求类型)  =>  {return instance({url:路径,method: 'get',params: {...后端要的参数}})
}export  const  自定义接口名  =  (形参:请求类型)  =>  {return post.方法(路径,后端要的参数);
}export  const  自定义接口名  =  (形参:请求类型)  =>  {return instance({url:路径,method: 'post',后端要的参数,params: {...后端要的参数},headers: {请求头}})
}

5、vite.config.ts 配置

       ①在vite中配置别名,在开发时对路径看些来直观点

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'// https://vitejs.dev/config/
export default defineConfig({plugins: [vue()],  // 注册插件server: {open: true},resolve: {alias: {// 如果报错__dirname找不到,需要安装node,执行npm install @types/node"@": path.resolve(__dirname, "src"),"comps": path.resolve(__dirname, "src/components"),}}
})

这时提示找不到path,可以执行以下命令来安装对应模块

npm install @types/node

在tsconfig.json中配置

{"compilerOptions": {"target": "ESNext",...// 配置@别名"baseUrl": ".","paths": {"@/*": ["src/*"]}, },
}

http://www.hkea.cn/news/655571/

相关文章:

  • 网站制作发票字节跳动广告代理商加盟
  • 义乌做网站武汉seo推广优化公司
  • 济宁哪家网站建设公司正规谷歌浏览器 免费下载
  • 有没有女的做任务的网站广东省新闻
  • seo长尾关键词优化如何做网站推广优化
  • 网站搭建服务合同seo排名赚
  • 东莞有什么比较好的网站公司苏州关键词排名系统
  • 做中国供应商免费网站有作用吗浙江网站推广运营
  • mysql8 wordpress百度推广优化是什么意思
  • 做装修广告网站好seo推广公司招商
  • 城市模拟建设游戏网站今天最新的新闻头条新闻
  • 手机网站自适应代码品牌网络营销策划方案
  • 个人网站建设在哪里百度资源搜索平台
  • 云空间免费空间北京网站优化校学费
  • 个人网站做导航网站项目推广平台有哪些
  • 威海住房建设局网站培训学校资质办理条件
  • 做趣味图形的网站免费线上培训平台
  • 女生做网站前端设计师成都网站seo
  • 濮阳建设银行官方网站搜索引擎优化的对比
  • 完全删除wordpressseo小白入门
  • 做网站常用到的css标签什么软件可以找客户资源
  • 有做销售产品的网站有哪些新闻头条今日新闻
  • 深圳自己做网站 服务器优化的近义词
  • 网站开发职业工资网站推广上首页
  • 宝安附近公司做网站建设多少钱深圳百度开户
  • 成都紧急通知seo网络营销招聘
  • 思坎普网站建设如何做营销推广
  • 太原网站优化公司有域名和服务器怎么建网站
  • 网站策划的前景seo 推广
  • wordpress导入网站文章怎么联系百度人工客服