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

做一个网站做少多少钱制作网站首页

做一个网站做少多少钱,制作网站首页,做一个小程序要花多少钱,视频logo免费生成网站1.npm create vite 设置你的项目名,选择框架,选择语言 我此处选的为Vue typescripe 2.按照命令去执行 cd vite-vue3-app 进入项目文件,npm install 安装依赖,npm run dev 运行项目 此处由于node、npm版本导致报错问题如图 在…

1.npm create vite 

设置你的项目名,选择框架,选择语言

我此处选的为Vue + typescripe

2.按照命令去执行 cd vite-vue3-app 进入项目文件,npm install 安装依赖,npm run dev 运行项目

此处由于node、npm版本导致报错问题如图

在安装依赖的时候有提示node版本需要大于18,而我本地的node版本为16.20.1 npm版本为8.19.4

解决方法 1.升级node版本(我用的nvm版本管理工具,切换到高版本,删除node_modules文件夹,重新安装依赖)

vue3的官方文档也要求node版本要18+,

方法2.如果由于各种原因不能升级node,那需要手动修改package.json中vite的版本,降低vite的版本到例如 4.4.5(删除node_modules文件夹,重新安装依赖,然后启动项目)

3.安装项目所需的基础插件

看你自己需要啥,安装啥,此处我安装的依赖

npm install axios pinia vue-router vant -S

Vant 是一个轻量、可定制的移动端组件库 Vant 4 - A lightweight, customizable Vue UI library for mobile web apps.

npm install less unplugin-auto-import unplugin-vue-components @vant/auto-import-resolver postcss-px-to-viewport @types/node -D

4.配置vite.config.ts

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import AutoImport from 'unplugin-auto-import/vite';
import Components from 'unplugin-vue-components/vite';
import { VantResolver } from '@vant/auto-import-resolver';
import postcssPxToViewport from 'postcss-px-to-viewport';
import resolveConfig from './resolveConfig/resolveConfig';
import tsConfig from './viteConfig/plugins/setTsConfig';
import path from 'path';
import replaceCode from './viteConfig/plugins/replaceCode';
// https://vite.dev/config/
export default defineConfig({base: './',server: {host:true},plugins: [vue(),tsConfig(),replaceCode([{search: '@paycenter',replace: '----',//你自己需要替换的域名地址等attr: 'ig',}]),AutoImport({imports: ['vue', 'vue-router'],// 可以选择auto-import.d.ts生成的位置,使用ts建议设置为'src/auto-import.d.ts'dts: 'src/auto-import.d.ts',}),Components({resolvers: [VantResolver()],}),],resolve:{alias: {'@':path.resolve(__dirname,'src'),...resolveConfig,}},css: {postcss: {plugins: [postcssPxToViewport({unitToConvert: 'px', // 要转化的单位viewportWidth: 375, // UI设计稿的宽度// viewportHeight: 667, //视口的高度,对应的是设计稿的高度(也可以不配置)unitPrecision: 6, // 转换后的精度,即小数点位数propList: ['*'], // 指定转换的css属性的单位,*代表全部css属性的单位都进行转换viewportUnit: 'vw', // 指定需要转换成的视窗单位,默认vwfontViewportUnit: 'vw', // 指定字体需要转换成的视窗单位,默认vwselectorBlackList: ['ignore'], // 指定不转换为视窗单位的类名,minPixelValue: 1, // 默认值1,小于或等于1px则不进行转换mediaQuery: true, // 是否在媒体查询的css代码中也进行转换,默认falsereplace: true, // 是否转换后直接更换属性值exclude: [/node_modules/], // 设置忽略文件,用正则做目录名匹配landscape: false, // 是否处理横屏情况}),],},},build: {outDir: process.env.NODE_ENV,chunkSizeWarningLimit: 1500,assetsDir: 'assets',terserOptions: {// 清除console和debuggercompress: {drop_console: true,drop_debugger: true,},},rollupOptions: {output: {manualChunks(id) {if (id.includes('node_modules')) {return 'vendor'}},},},},
})

 vite.config.ts 中涉及的文件如下

replaceCode.ts

function replaceCodePlugin(options) {return {name: "替换文件内特殊内容",transform(code) {let filterCode = code;options.forEach(item => {let reg = new RegExp(item.search, item.attr);filterCode = filterCode.replace(reg, item.replace);})return {code: filterCode,}},};
}
export default replaceCodePlugin

setTsConfig.ts

import fs from 'fs';
import tsJson from '../tsconfigTemplate'
import path from 'path';
function tsConfigPlugin(){return {name:"替换tsconfig.json",buildStart(){let filePath=path.resolve(__dirname,"../../tsconfig.json");fs.writeFileSync(filePath,JSON.stringify(tsJson));}}
}export default tsConfigPlugin; 

tsconfigTemplate.ts

import resolveConfig from '../resolveConfig/resolveConfig'
let tsJson={"compilerOptions": {"types": ["vite/client","node"],"target": "ES2020","useDefineForClassFields": true,"module": "ESNext","lib": ["ES2020", "DOM", "DOM.Iterable"],"skipLibCheck": true,"moduleResolution": "bundler","allowImportingTsExtensions": true,"resolveJsonModule": true,"isolatedModules": true,"noEmit": true,"jsx": "preserve","strict": false,"noUnusedLocals": true,"noUnusedParameters": true,"noFallthroughCasesInSwitch": true,"baseUrl":"","paths":{}},"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"],"references": [{ "path": "./tsconfig.node.json" }],
};for(let key in resolveConfig){tsJson.compilerOptions.paths[key]=[resolveConfig[key]]
}export default tsJson;

resolveConfig.ts

import path from 'path';
const resolveConfig = {'@/*':"src/*",error: path.resolve(__dirname, '../src/pages/error/index.vue'),'@payment': path.resolve(__dirname, '../src/pages/payment'),'@payment/*': 'src/pages/payment/*'
};
export default resolveConfig;

http://www.dtcms.com/wzjs/228250.html

相关文章:

  • 做钢材的都用什么网站百度首页排名优化公司
  • 淘客cms建站系统搜索引擎优化实训
  • 公司做一个网站内容如何设计怎么查看域名是一级还是二级域名
  • 装饰公司网站建设效果腾讯竞价广告
  • 甘肃省5g网站建设中标单位国际时事新闻2022最新
  • 东莞石排做企业网站seo专业培训课程
  • 代做原创毕业设计网站长沙做搜索引擎的公司
  • 做网站的费用记哪个科目百度seo优化招聘
  • 做调查问卷的网站上海做关键词推广企业
  • wordpress底下固定seo站长工具查询系统
  • b站网址多少廊坊seo推广公司
  • tk域名网站加盟
  • 旅游电子商务网站的建设方案阳东网站seo
  • 做网站抽奖系统搜索引擎优化方案案例
  • 大方网站制作百度竞价推广属于什么广告
  • 国贸行业的网站建设电商seo优化是什么
  • 物联网专业就业方向沧州网站seo
  • 电商网站开发详细流程怎么制作一个自己的网站
  • 施工企业半年工作总结国内专业的seo机构
  • 公司网站建设找谁上海网站搜索排名优化哪家好
  • 网站建设的三大原则交换链接网站
  • 旅游网站开发文献综述销售推广
  • 淄博网站排名优化360营销平台
  • 可以免费进入的网站正能量域名安徽网络推广
  • 有口碑的武进网站建设百度开户渠道商哪里找
  • 如何做网站公司名seoseo关键词优化推广报价表
  • 网址导航类网站如何做推广十大网络营销经典案例
  • 专业做外贸网站公司西安自动seo
  • 一个网站做三个关键词南宁seo排名外包
  • 高邑做网站青岛seo外包公司