做化学科普网站的目的如何让网站火起来

web/2025/9/27 1:59:36/文章来源:
做化学科普网站的目的,如何让网站火起来,wordpress caller_get_posts,四会城乡建设局网站代码下载 打包发布服务代码下载 项目优化 生成打包报告#xff0c;根据报告优化项目第三方库启用CDNElement-UI组件按需加载路由懒加载首页内容定制 添加进度条 给项目添加进度条效果#xff0c;先打开项目控制台#xff0c;打开依赖#xff0c;安装 nprogress 打开ma…代码下载 打包发布服务代码下载 项目优化 生成打包报告根据报告优化项目第三方库启用CDNElement-UI组件按需加载路由懒加载首页内容定制 添加进度条 给项目添加进度条效果先打开项目控制台打开依赖安装 nprogress 打开main.js编写如下代码 // 导入 NProgress import NProgress from nprogress import nprogress/nprogress.css// 请求拦截器请求在到达服务器之前先会调用use中的这个回调函数来添加请求头信息 axios.interceptors.request.use(function(config) {console.log(request: , config)NProgress.start()config.headers.Authorization window.sessionStorage.getItem(token)return config }) // 响应拦截器 axios.interceptors.response.use(function(res) {console.log(response: , res)NProgress.done()return res })根据报错修改代码 根据ESLint的警告提示更改对应的代码在.prettierrc文件中更改设置 printWidth:200, 将每行代码的文字数量更改为200 {semi:false,singleQuote:true,printWidth:200 }处理生产环境 console 日志 安装一个插件 babel-plugin-transform-remove-console 在项目 build 阶段移除所有的console信息打开项目控制台点击依赖-开发依赖输入 babel-plugin-transform-remove-console安装。打开babel.config.js编辑代码如下 // 发布阶段需要用到发 babel 插件 const prodPlugins [] if (process.env.NODE_ENV production) prodPlugins.push(transform-remove-console)module.exports {presets: [vue/cli-plugin-babel/preset],plugins: [[component,{libraryName: element-ui,styleLibraryName: theme-chalk}],// 发布产品时用到的插件数组...prodPlugins] }至此运行 build 打包得到的目标文件中确实没有 console 日志输出但是打包日志中依然有警告若想消除此条警告可以在 .eslintrc.js 文件的 rule 中添加 no-console: off // 没有控制台输出 此配置。 生成打包报告 命令行形式生成打包报告 vue-cli-service build --report在vue控制台生成打包报告点击“任务”“build”“运行”运行完毕之后就可以查看报告 修改webpack的默认配置 如果要配置webpack需要通过vue.config.js来配置。 1、为开发模式与发布模式指定不同的打包入口 默认情况下Vue项目的开发模式与发布模式共用同一个打包的入口文件即 src/main.js。为了将项目的开发过程与发布过程分离可以为两种模式各自指定打包的入口文件即 开发模式的入口文件为 src/main-dev.js发布模式的入口文件为 src/main-prod.js 在 vue.config.js 导出的配置对象中新增 configureWebpack 或 chainWebpack 节点来自定义 webpack 的打包配置。configureWebpack 和 chainWebpack 的作用相同唯一的区别就是它们修改 webpack 配置的方式不同 chainWebpack 通过链式编程的形式来修改默认的 webpack 配置configureWebpack 通过操作对象的形式来修改默认的 webpack 配置 两者具体的使用差异可参考这里。 重命名 main.js 为 main-dev.js并复制一份 main-dev.js 命名为 main-prod.js在 vue.config.js 中通过 chainWebpack 自定义打包入口 const { defineConfig } require(vue/cli-service) module.exports defineConfig({transpileDependencies: true,chainWebpack: config {// 发布模式config.when(process.env.NODE_ENV production, config {// 入口函数config.entry(app).clear().add(./src/main-prod.js)})// 开发模式config.when(process.env.NODE_ENV development, config {config.entry(app).clear().add(./src/main-dev.js)})} })通过 externals 加载外部 CDN 资源 默认情况下依赖项的所有第三方包都会被打包到 js/chunk-vendors.******.js 文件中导致该js文件过大。那么可以通过 externals 排除这些包使它们不被打包到 js/chunk-vendors.******.js 文件中在 vue.config.js 中的发布模式下添加如下代码 // externals 节点中的第三方依赖包都不会被打包config.set(externals, {vue: Vue,vue-router: VueRouter,axios: axios,lodash: _,echarts: echarts,nprogress: NProgress,vue-quill-editor: VueQuillEditor})同时需要在 public/index.html 文件的头部添加如下的 CDN 资源引用 !-- nprogress 样式表 --link relstylesheet hrefhttps://cdn.jsdelivr.net/npm/nprogress0.2.0/nprogress.min.css!-- 富文本编辑器 样式表 --link hrefhttps://cdn.jsdelivr.net/npm/quill1.3.4/dist/quill.core.min.css relstylesheetlink hrefhttps://cdn.jsdelivr.net/npm/quill1.3.4/dist/quill.snow.min.css relstylesheetlink hrefhttps://cdn.jsdelivr.net/npm/quill1.3.4/dist/quill.bubble.min.css relstylesheet!-- element-ui 样式表 --link relstylesheet hrefhttps://unpkg.com/element-ui2.15.14/lib/theme-chalk/index.cssscript srchttps://cdn.jsdelivr.net/npm/vue2.7.16/scriptscript srchttps://cdn.jsdelivr.net/npm/vue-router3.6.5/scriptscript srchttps://cdn.jsdelivr.net/npm/axios1.7.2/dist/axios.min.js/scriptscript srchttps://cdn.jsdelivr.net/npm/lodash4.17.21/lodash.min.js/scriptscript srchttps://cdn.jsdelivr.net/npm/echarts5.5.0/dist/echarts.min.js/scriptscript srchttps://cdn.jsdelivr.net/npm/nprogress0.2.0/nprogress.min.js/script!-- Include the Quill library --script srchttps://cdn.quilljs.com/1.3.4/quill.min.js/script!-- Quill JS Vue --script srchttps://cdn.jsdelivr.net/npm/vue-quill-editor3.0.6/dist/vue-quill-editor.js/scriptscript srchttps://unpkg.com/element-ui2.15.14/lib/index.js/script并且还得再 main-prod.js 文件中删除或注销如下的 element-ui 按需加载 和 css 加载的代码 // 导入 element-ui // import ./plugins/element.js// 导入富文本编辑器 import VueQuillEditor from vue-quill-editor // import quill/dist/quill.core.css // import styles // import quill/dist/quill.snow.css // for snow theme // import quill/dist/quill.bubble.css // for bubble theme// 导入 NProgress import NProgress from nprogress // import nprogress/nprogress.css注意由于前面在 plugin/element 文件将 element-ui 中 Message 组件配置为 msg 属性了 Vue.prototype.$msg Message此时必须将其修改为 Vue.prototype.$message Message 并全局搜索 this.$msg 将其替换为 this.$message。 首页内容定制 开发环境的首页和发布环境的首页展示内容的形式有所不同。如开发环境中使用的是import加载第三方包而发布环境则是使用CDN那么首页也需根据环境不同来进行不同的实现可以通过插件的方式来定制首页内容首先打开vue.config.js编写代码如下 module.exports defineConfig({transpileDependencies: true,chainWebpack: config {// 发布模式config.when(process.env.NODE_ENV production, config {// 入口函数config.entry(app).clear().add(./src/main-prod.js)// externals 节点中的第三方依赖包都不会被打包config.set(externals, {vue: Vue,vue-router: VueRouter,axios: axios,lodash: _,echarts: echarts,nprogress: NProgress,vue-quill-editor: VueQuillEditor})// 使用插件添加参数isProdconfig.plugin(html).tap(arg {arg[0].isProd truereturn arg})})// 开发模式config.when(process.env.NODE_ENV development, config {config.entry(app).clear().add(./src/main-dev.js)// 使用插件添加参数isProdconfig.plugin(html).tap(arg {arg[0].isProd falsereturn arg})})} })然后在 public/index.html 中使用插件判断是否为发布环境并定制首页内容标题和CDN加载项 title% htmlWebpackPlugin.options.isProd ? : dev-%后台管理平台/title% if (htmlWebpackPlugin.options.isProd) { %!-- nprogress 样式表 --link relstylesheet hrefhttps://cdn.jsdelivr.net/npm/nprogress0.2.0/nprogress.min.css!-- 富文本编辑器 样式表 --link hrefhttps://cdn.jsdelivr.net/npm/quill1.3.4/dist/quill.core.min.css relstylesheetlink hrefhttps://cdn.jsdelivr.net/npm/quill1.3.4/dist/quill.snow.min.css relstylesheetlink hrefhttps://cdn.jsdelivr.net/npm/quill1.3.4/dist/quill.bubble.min.css relstylesheet!-- element-ui 样式表 --link relstylesheet hrefhttps://unpkg.com/element-ui2.15.14/lib/theme-chalk/index.cssscript srchttps://cdn.jsdelivr.net/npm/vue2.7.16/scriptscript srchttps://cdn.jsdelivr.net/npm/vue-router3.6.5/scriptscript srchttps://cdn.jsdelivr.net/npm/axios1.7.2/dist/axios.min.js/scriptscript srchttps://cdn.jsdelivr.net/npm/lodash4.17.21/lodash.min.js/scriptscript srchttps://cdn.jsdelivr.net/npm/echarts5.5.0/dist/echarts.min.js/scriptscript srchttps://cdn.jsdelivr.net/npm/nprogress0.2.0/nprogress.min.js/script!-- Include the Quill library --script srchttps://cdn.quilljs.com/1.3.4/quill.min.js/script!-- Quill JS Vue --script srchttps://cdn.jsdelivr.net/npm/vue-quill-editor3.0.6/dist/vue-quill-editor.js/scriptscript srchttps://unpkg.com/element-ui2.15.14/lib/index.js/script% } %路由懒加载 当打包构建项目时JavaScript 包会变得非常大影响页面加载。如果我们能把不同路由对应的组件分割成不同的代码块然后当路由被访问的时候才加载对应组件这样就更加高效了。具体需要 3 步 1、安装 babel/plugin-syntax-dynamic-import 包。打开vue控制台点击依赖-安装依赖-开发依赖-搜索babel/plugin-syntax-dynamic-import 点击安装。 2、在 babel.config.js 配置文件中声明该插件 // 发布阶段需要用到发 babel 插件 const prodPlugins [] if (process.env.NODE_ENV production) prodPlugins.push(transform-remove-console)module.exports {presets: [vue/cli-plugin-babel/preset],plugins: [[component,{libraryName: element-ui,styleLibraryName: theme-chalk}],babel/plugin-syntax-dynamic-import,// 发布产品时用到的插件数组...prodPlugins] }3、将路由改为按需加载的形式打开router.js更改引入组件代码如下 import Vue from vue import VueRouter from vue-router // import login from ../components/Login.vue const login () import(/* webpackChunkName: login_home_welcome */ ../components/Login.vue) // import home from ../components/Home.vue const home () import(/* webpackChunkName: login_home_welcome */ ../components/Home.vue) // import welcome from ../components/Welcome.vue const welcome () import(/* webpackChunkName: login_home_welcome */ ../components/Welcome.vue)// import users from ../components/user/Users.vue const users () import(/* webpackChunkName: users_rights_roles */ ../components/user/Users.vue) // import rights from ../components/power/Rights.vue const rights () import(/* webpackChunkName: users_rights_roles */ ../components/power/Rights.vue) // import roles from ../components/power/Roles.vue const roles () import(/* webpackChunkName: users_rights_roles */ ../components/power/Roles.vue)// import cate from ../components/goods/Cate.vue const cate () import(/* webpackChunkName: cate_params */ ../components/goods/Cate.vue) // import params from ../components/goods/Params.vue const params () import(/* webpackChunkName: cate_params */ ../components/goods/Params.vue)// import goods from ../components/goods/List.vue const goods () import(/* webpackChunkName: goods_add */ ../components/goods/List.vue) // import addGoods from ../components/goods/Add.vue const addGoods () import(/* webpackChunkName: goods_add */ ../components/goods/Add.vue)// import orders from ../components/order/Order.vue const orders () import(/* webpackChunkName: orders_reports */ ../components/order/Order.vue) // import reports from ../components/report/Report.vue const reports () import(/* webpackChunkName: orders_reports */ ../components/report/Report.vue)关于路由懒加载的详细文档可参考此链接。 项目上线 通过 node 创建 web 服务器 创建一个文件夹 vue_shop_server 存放 node 服务器使用终端打开 vue_shop_server 文件夹输入命令 npm init -y初始化包之后输入命令 npm i express -S打开 vue_shop 目录复制dist文件夹粘贴到 vue_shop_server 中在 vue_shop_server 文件夹中创建 app.js 文件,编写代码如下 const express require(express) const app express()// 将打包的目录托管为静态资源 app.use(express.static(./dist))// 启动服务器 app.listen(8090, function() {console.log(express server running at http://127.0.0.1:8090) })开启 gzip 配置 使用 gzip 可以减小文件体积使传输速度更快。 1、打开 vue_shop_server文件夹的终端输入命令npm i compression -D 2、可以通过服务器端使用 Express 做 gzip 压缩。其配置如下 // 开启 gzip 一定要挂载在静态资源托管之前 const compression require(compression) app.use(compression())配置 HTTPS 服务 传统的 HTTP 协议传输的数据都是明文不安全采用 HTTPS 协议对传输的数据进行了加密处理可以防止数据被中间人窃取使用更安全。 申请 SSL 证书申请地址 进入 https://freessl.cn/ 官网输入要申请的域名并选择品牌。输入自己的邮箱并选择相关选项。验证 DNS在域名管理后台添加 TXT 记录。验证通过之后下载 SSL 证书 full_chain.pem 公钥private.key 私钥。 在后台项目中导入证书配置 HTTPS 服务 const https require(https) const fs require(fs) // 读取公钥和私钥 const options {cert: fs.readFile(./full_chain.pem),ket: fs.readFile(./private.key) } // 启动 https 服务器 https.createServer(options, app).listen(443)pm2 管理应用 安装 pm2在终端执行如下命令安装 pm2 npm i pm2 -g使用 pm2进入服务器项目目录vue_shop_server 启动项目pm2 start 脚本 --name 自定义名称查看运行项目pm2 ls重启项目pm2 restart 自定义名称/id停止项目pm2 stop 自定义名称/id删除项目pm2 delete 自定义名称/id

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/82481.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

广州做外贸网站的公司简介看车二手车网站源码

介绍 定义一个工厂类,它可以根据参数的不同返回不同类的实例,被创建的实例通常都具有相同的父类。因为在简单工厂模式中用于创建实例的方法是静态方法,因此简单工厂模式又被称为静态工厂方法模式,属于类创建型模式 实现 class Pr…

网站运营 策划 推广 维护成都公众号小程序开发

linux上静态库和动态库的编译和使用(附外部符号错误浅谈) 这就是静态库和动态库的显著区别,静态库是编译期间由链接器通过include目录找到并链接到到可执行文件中,而动态库则是运行期间动态调用,只有运行时找不到对应动…

上海开本建设工程有限公司玉林网站seo

紧接前文,本文是农田场景下庄稼作物、杂草检测识别的第二篇文章,前文是基于YOLOv3这一网络模型实现的目标检测,v3相对来说比较早期的网络模型了,本文是基于最为经典的YOLOv5来开发不同参数量级的检测端模型。 首先看下实例效果&a…

网站数据丢失了做数据恢复需多久转发 wordpress 奖励

插值算法简介 数据分析是在大数据时代下不可获取的一环,合理、全面地分析数据,能够使得决策者在决策时作出最为明智的决定。在数据分析过程中,常常可以使用插值算法来根据已知的数据估算出未知的数据,从而模拟产生一些新的值来满…

觅图网免费素材图库深圳网站优化页面

like查询是区分大小写的转载于:https://blog.51cto.com/cyxinda/1226040

东莞网站seo网站网络

本文转载自公众号“夕小瑶的卖萌屋”,专业带逛互联网算法圈的神操作 -----》我是传送门 关注后,回复以下口令: 回复【789】 :领取深度学习全栈手册(含NLP、CV海量综述、必刷论文解读) 回复【入群】&…

石家庄哪里能制作网站wordpress linux下载

传送门:异步编程系列目录…… 最近在学习.NET4.5关于“并行任务”的使用。“并行任务”有自己的同步机制,没有显示给出类似如旧版本的:事件等待句柄、信号量、lock、ReaderWriterLock……等同步基元对象,但我们可以沿溪这一编程习…

宿迁哪里有做网站开发的wordpress去掉模板登录

定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。 思考题: 请同时实现迭代版本和递归版本。 数据范围 链表长度 [0,30] 。 样例 输入:1->2->3->4->5->NULL 输出:5->4->3->2->1->N…

建设网站的企业邮箱网站建设服务python做问卷调查的网站

SineSurface直译为正弦曲面.这有可能和你想象的正弦曲线不一样.如果把正弦曲线绕Y轴旋转,得到的该是正弦波曲面.这个曲面与上一节中的罗马曲面有些相似,那个是被捏过的正四面体,这个则是个被捏过正方体. 本文将展示SineSurface与粽子曲面的生成算法和切图,使用自己定义语法的脚…

公司网站建设北京商业计划的网站建设费用

文章目录 1.视频输出模块1.1 视频输出初始化1.1.1 视频输出初始化主要流程1.1.2 calculate_display_rect初始化显示窗口大小 1.2 视频输出逻辑1.2.1 event_loop开始处理SDL事件1.2.2 video_refresh1.2.2.1 计算上一帧显示时长,判断是否还要继续上一帧1.2.2.2 估算当前帧显示时长…

网站不会更新文章网站资讯建设

可以用C语言中的system()函数来实现系统的自动关机程序,可以设置多长时间后将自动关机。当然马上关机也是可以的,我们就可以恶搞别人计算机了(你事先得知道怎么解),将写好的自动关机程序复制到别人电脑,然后将可执行的文件设为开机…

公司网站自己创建凡科快速建站

这篇文章我们来讲解一下数据结构中非常重要的B-树。 目录 1.B树的相关介绍 1.1、B树的介绍 1.2、B树的特点 2.B树的节点类 3.小结 1.B树的相关介绍 1.1、B树的介绍 在介绍B树之前,我们回顾一下我们学的树。 首先是二叉树,这个不用多说&#xff…

网站付费推广有哪些wordpress space

!!!注意!!! 看本篇之前,一定要先看笔者上一篇的LPA*讲解,笔者统一了符号看起来过渡会更加好理解! 到目前为止,我们学习了广度优先搜索Dijkstra算法、能够计…

网站后台传不了图片中山精品网站建设案例

这个专题学习了两种算法 1.稳定婚姻匹配问题 2.最大团问题 稳定婚姻匹配问题: 1.Stable Match 关于信号站匹配 多了一个容量的权值 如果距离相同看容量大小 数据处理较麻烦! 2.marriage 稳定婚姻匹配问题入门题 3.The Stable Marriage problem 和入门题…

静态购物网站模版图片高清处理在线

1、定义 多元有序逻辑回归用于分析有序分类因变量与一个或多个自变量之间的关系。有序逻辑回归适用于因变量具有自然排序但没有固定间距的类别,例如疾病严重程度(轻度、中度、重度)或调查问卷中的满意度评分(非常不满意、不满意、…

网站建设成立领导小组创意网店店铺名字大全

我们经常会遇到表被锁的情况,这可能会严重影响数据库的性能和可用性。我将与大家分享如何识别、分析和解决这些问题,以及如何使用特定的 SQL 查询来执行解锁操作。 了解表锁的原因 首先,让我们来了解一下导致表被锁的常见原因。长时间运行的…

优化网站排名软件织梦网站wap

文章目录 Rosenblatt感知器基础收敛算法算法概述算法步骤关键点说明总结 C实现要点代码 参考文献 Rosenblatt感知器 基础 感知器,也可翻译为感知机,是一种人工神经网络。它可以被视为一种最简单形式的前馈式人工神经网络,是一种二元线性分类…

wordpress企业站被黑网站活动专题页面设计

在Python项目中,通常会有一个名为 requirements.txt 的文件,其中列出了项目所需的所有依赖包及其版本。 1. 使用freeze 如果你的项目中没有 requirements.txt 文件,你可以通过下面的命令创建一个当前项目所在环境下已安装的包及其版本的 re…

小学网站aspwordpress 2.9.1漏洞

文章目录 Selenium Java环境搭建配置系统环境变量PATH验证环境是否搭建成功常见问题&解决办法 Selenium Java环境搭建 Java版本最低要求为8,这里默认大家都下载好了Java。😆 下载chrome浏览器(点我下载) 观察chrome版本。…

金融网站设计欣赏关键词推广优化

1.什么是gcc \qquadgcc是linux中的一款编译源代码的文本编译器 2.编译过程 \qquad比如对hello.c文件进行编译, \qquad首先,预处理器cpp对hello.c进行处理,cpp会把头文件展开,宏替换,注释去掉,经过cpp处理后…