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

广东东莞网站建设最新的网站建设软件有哪些

广东东莞网站建设,最新的网站建设软件有哪些,如何规划建设一个企业网站,手机移动端网站做多大有时候#xff0c;在公司里一些项目开发前#xff0c;后端接口没那么快给到前端时#xff0c;前端可以先跟后端约定好各个接口的请求路径、请求参数以及返回数据格式#xff0c;先整理出一份接口文档#xff0c;这样前端可以通过mockjs参考接口文档#xff0c;自己先模拟…有时候在公司里一些项目开发前后端接口没那么快给到前端时前端可以先跟后端约定好各个接口的请求路径、请求参数以及返回数据格式先整理出一份接口文档这样前端可以通过mockjs参考接口文档自己先模拟数据写业务代码等待后端准备好再用后端真实的接口数据替换自己写模拟数据实现前后端同时开发。 一、在Vue中的使用 1、安装mock.js npm i mockjs -D 2、新建mock文件夹 在项目的根目录下新建mock文件夹打包记得删除或者使用码云托管代码用.gitignore忽略掉在文件夹下新建index.js文件 // mock/index.js// 引入mockjs import Mock from mockjs; // 拦截请求模拟接口url和数据 Mock.mock(/api/list, get, {message: success,code: 200,data: {name: xxx} })//带参数 /* post参数option前端请求的数据option.url请求的地址 option.type 请求的方式 option.body请求的字符参数需要JSON.parse转对象 */ Mock.mock(/api/list2/, post, function (option) {return {code: 0,msg: 参数成功,data: {title: 信息标题,content: 内容,...JSON.parse(option.body),},}; }); 3、在开发环境下引入mock 在配置文件 .env.development 里配置mock开启的标示 // .env.developmentNODE_ENV development VUE_APP_MOCK true 在main.js中判断是开发环境且有开启mock的标示时引入mock  // main.js// 判断配置文件里mock是否要开启 if(process.env.NODE_ENV development process.env.VUE_APP_MOCK true){import ./mock/index.js } 4、在具体业务逻辑里使用 // 引入axios import axios from axios// /接口地址与拦截地址要一致 axios.get(/api/list/).then(res {console.log(res, res) })//带参数 axios.post(/api/list2/, { id: 111, key: xxx }).then(res {console.log(带参数, res); }); 二、在react中使用 1、安装mock.js npm i mockjs -D 2、新建mock文件夹 在项目的根目录下新建mock文件夹打包记得删除或者使用码云托管代码用.gitignore忽略掉在文件夹下新建index.js文件 // mock/index.js// 引入mockjs import Mock from mockjs; // 拦截请求模拟接口url和数据 Mock.mock(/api/list, get, {message: success,code: 200,data: {name: xxx} })//带参数 /* post参数option前端请求的数据option.url请求的地址 option.type 请求的方式 option.body请求的字符参数需要JSON.parse转对象 */ Mock.mock(/api/list2/, post, function (option) {return {code: 0,msg: 参数成功,data: {title: 信息标题,content: 内容,...JSON.parse(option.body),},}; }); 3、在开发环境下引入mock 在配置文件 .env.development 里配置mock开启的标示 // .env.developmentNODE_ENV development REACT_APP_MOCK true 判断是开发环境且有开启mock的标示时引入mock  if (process.env.NODE_ENV development process.env.REACT_APP_MOCK true) {// import ./mock/index.jsrequire(./mock/index.js) }4、在具体业务逻辑里使用 // 引入axios import axios from axios// /接口地址与拦截地址要一致 axios.get(/api/list/).then(res {console.log(res, res) })//带参数 axios.post(/api/list2/, { id: 111, key: xxx }).then(res {console.log(带参数, res); }); 三、使用webpack来配置mockjs 除了上面的常规引入mockjs我们也可以使用以webpack的形式来配置mockjs。 1、vue.config.js中引用 注意webpack新版本中间件发生了变化before与after已经不能使用代替的onBeforeSetupMiddleware 与 onAfterSetupMiddleware 也要废弃合二为一成为了setupMiddlewaressetupMiddlewares 代替了 before与after所以mockjs在配置时也发生了变化。 1.1 新版本写法  // mock/useInfo.json{id: id(),username: cname(),date: date(),avatar: image(200x200,red,#fff,avatar),description: paragraph(),ip: ip(),email: email() }mock/index.js部分主要就是devServer.app.get变成了middlewares.unshift // mock/index.jsconst fs require(fs) const path require(path) const Mock require(mockjs)/*** param {string} filePath*/ function getJsonFile(filePath) {// 读取指定的json文件let json fs.readFileSync(path.resolve(__dirname, filePath), utf-8)// 解析并返回return json }//重点部分middlewares就是新增加的原本只有devServer。 module.exports function (middlewares, devServer) {// 判断要不要开启mockif(process.env.MOCK true){//middlewares.unshift就是之前的beforemiddlewares.push是aftermiddlewares.unshift({name: mock,// path 是可选的path: /api/test,middleware: (req, res) {let json getJsonFile(./mock/userinfo.json) //mock数据的样式自己新建。res.send(Mock.mock(json))},})}//return别忘了return middlewares }vue.config.js部分变成了setupMiddlewares  // vue.config.jsconst { defineConfig } require(vue/cli-service)module.exports defineConfig({transpileDependencies: true,devServer: {setupMiddlewares: require(./mock/index.js),}, })1.2 老版本写法 onBeforeSetupMiddleware方式的配置 // mock/index.jsconst fs require(fs) const path require(path) const Mock require(mockjs)/*** param {string} filePath*/ function getJsonFile(filePath) {let json fs.readFileSync(path.resolve(__dirname, filePath), utf-8)return json }module.exports function (devServer) {if(process.env.MOCK true){devServer.app.get(/api/test, (req, res) {let json getJsonFile(./mock/userinfo.json)res.send(Mock.mock(json))}) } }目前的新版本还是可以用这个的但是文档显示该配置项已弃用以支持 devServer.setupMiddlewares  // vue.config.jsconst { defineConfig } require(vue/cli-service)module.exports defineConfig({transpileDependencies: true,onBeforeSetupMiddleware: {setupMiddlewares: require(./mock/index.js),}, }) before方式的配置 // mock/index.jsconst Mock require(mockjs) const fs require(fs) const path require(path)// 用于被index.js进行调用 function getJsonFile (filePath) {// 读取指定的json文件const json fs.readFileSync(path.resolve(__dirname, filePath), utf-8)// 解析并返回console.log(json)return JSON.parse(json) }module.exports function (app) {if(process.env.MOCK true){// get请求app.get(/api/test1, (rep,res) {let json getJsonFile(./mock/userInfo.json)res.json(Mock.mock(json))})// post请求app.post(/api/test2, (rep,res) {let json getJsonFile(./mock/userInfo.json)res.json(Mock.mock(json))})}} // vue.config.jsconst { defineConfig } require(vue/cli-service)module.exports defineConfig({devServer: {before: require(./mock/index.js),}, }) 配置全部完成之后就可以在需要的组建中使用 import axios from axiosaxios.get(/api/test).then((res){console.log(虚拟数据, res); }) 2、vite.config.ts中引用 有些项目是用vite这个前端构建工具构建的话配置mockjs会有些区别。 安装 mockjs 和 vite-plugin-mock npm i mockjs -D npm i vite-plugin-mock -D 在vite.config.ts进行配置 // vite.config.tsimport { defineConfig } from vite import vue from vitejs/plugin-vue // 引入viteMockServe import { viteMockServe } from vite-plugin-mockexport default defineConfig({plugins: [vue(),viteMockServe({mockPath: ./mock/}),] }) vite-plugin-mock 中的配置内容的含义  supportTs?: boolean; --是否读取ts文件模块设置为true时不能读取js文件logger?:boolean; --是否在控制台显示请求日志mockPath?: string;  --设置模拟数据的存储文件夹如果不是index.js需要写明完整路径ignore?: RegExp | ((fileName: string) boolean);--读取文件时忽略指定格式的文件watchFiles?: boolean; --是否监视mockPath文件夹内文件的修改localEnabled?: boolean; --设置是否启用本地 xxx.ts 文件不要在生产环境中打开它.设置为 false 将禁用 mock 功能ignoreFiles?: string[]; --读取文件时忽略的文件configPath?: string; --设置模拟读取的数据条目。 当文件存在并且位于项目根目录中时将首先读取并使用该文件。 配置文件返回一个数组prodEnabled?: boolean; --设置打包是否启用 mock 功能injectFile?: string; --如果生产环境开启了 mock 功能,即prodEnabledtrue.则该代码会被注入到injectFile对应的文件的底部。默认为main.{ts,js}。这样做的好处是,可以动态控制生产环境是否开启 mock 且在没有开启的时候 mock.js 不会被打包。如果代码直接写在main.ts内则不管有没有开启,最终的打包都会包含mock.jsinjectCode?: string; --injectCode代码注入的文件,默认为项目根目录下src/main.{ts,js} 可以根据自己的项目需求将以 VITE_XX 开头的变量定义在根目录中的 .env.development [ production | staging ] 文件中,分别对应 开发 [ 生产测试 ] 环境 // .env.development# 前缀地址 VITE_BASE_URL /dev-api# 请求路径 VITE_API_URL http://192.168.x.x:8080# MOCK开启的标示 VITE_BASE_MOCK true mock文件夹下的文件 // mock/index.jsexport * as userInfo from ./userInfo // mock/userInfo.jsexport default [{url: /api/test,method: get,response: () {return {code: 0,message: ok,data: {rows|10: [{id: guid,name: cname,age|20-30: 23,job|1: [前端工程师, 后端工程师, UI工程师, 需求工程师]}]},}}} ] 配置全部完成之后就可以在需要的组建中使用 import axios from axiosaxios.get(/api/test).then((res){console.log(虚拟数据, res); }) 在生产环境使用 修改mock/index.js // mock/index.jsimport { createProdMockServer } from vite-plugin-mock/es/createProdMockServerexport function setupProdMockServer() {createProdMockServer([{url: /api/getUsers,method: get,response: () {return {code: 0,message: ok,data: {rows|10: [{id: guid,name: cname,age|20-30: 23,job|1: [前端工程师, 后端工程师, UI工程师, 需求工程师]}]},}}}]) }修改main.js // main.jsimport { createApp } from vue import App from ./App.vue// 新增 import { setupProdMockServer } from ../mock/;if (process.env.NODE_ENV production) {setupProdMockServer(); }createApp(App).mount(#app)修改vite.config.ts // vite.config.tsimport { defineConfig } from vite // 新增 import { resolve } from path import vue from vitejs/plugin-vue // 引入viteMockServe import { viteMockServe } from vite-plugin-mockexport default defineConfig({plugins: [vue(),viteMockServe({// defaultsupportTs: true,logger: false,mockPath: ./mock/,// 新增localEnabled: false, // 开发环境prodEnabled: true, // 生产环境设为true也可以根据官方文档格式injectCode: import { setupProdMockServer } from ./mock;setupProdMockServer(); ,watchFiles: true, // 监听文件内容变更injectFile: resolve(src/main.js), // 在main.ts注册后需要在此处注入否则可能报找不到setupProdMockServer的错误}),] }) 注意 每次修改mock文件夹下的文件都必须重新启动服务才能生效。 参考资料 开始 | Vite 官方中文文档 Mock.js 起步 | Axios 中文文档 | Axios 中文网
http://www.dnsts.com.cn/news/102202.html

相关文章:

  • 做视频官方网站php网站开发 教案
  • discuz 企业网站网站建设原创
  • 第一模板网站快速建设网站免费视频教程
  • 模块建站工具广告推广免费
  • 汽车网站建设需要多少钱wordpress导出网页
  • 网站运营系统网站开发培训广西
  • 织梦做的网站首页被篡改成都建筑公司排名前十
  • 网站做访问追踪临安规划建设局网站
  • 怎么做物流网站代理修改网站logo
  • 厦门网络公司网站公司介绍信模板
  • 做暧暖ox免费视频网站代理充值平台网站
  • 广告位网站建设旅游产品设计方案
  • 网站建设中标签导航的特征技能网站建设项目需求
  • 广西住房和城乡建设厅网站首页网站二级目录解析
  • 哈尔滨建站模板源码宿迁市建设局网站维修基金
  • 网站首页轮播图怎么做的图文网站源码
  • 电信网站空间医院网站
  • 网站建设不开单怎样制作一个网站
  • 做网站都需要学什么西安市建设工程信息网新平台
  • 北京医疗网站建设公司排名杭州设计院
  • 网站如何做支付接口山东省住房和城乡建设厅网站教育中心
  • 彩票开奖网站建设linux wordpress 域名
  • 怎么查看网站备案号wordpress密码爆破
  • 如何找网站推广推荐个做淘宝主图视频的网站
  • 高港区企业网站建设学校设计网站方案
  • 徐州网站建设xlec微信管理系统软件
  • 南昌专业的电商网站开发公司朔州做网站的公司
  • 江西南昌网站建设公司哪家好推广话术
  • 大连网络备案做网站做c2c网站的弊端
  • 网站建设课程设计格式wordpress图片资源主题