有效的WhatsApp网页版消息群发
WhatsApp是一款全球应用广泛的即时通讯软件,用户可以通过它进行免费的文字聊天、语音通话、视频通话,还可以发送图片、音频、文件等多样化的信息内容。WhatsApp网页版则是为了满足用户在电脑端使用的需求,将手机版的功能进行了有效的延伸,使得用户在电脑上也能轻松进行通讯。
Vue项目编写完成后,一般需要打包压缩成新的文件,下面简单介绍一下是如何对Vue项目打包的。工具/原料npm1npmrunbuild2build进行中,一般这个过程需要一点点时间3打包完成,可以看到有提示buildcomplete4build完成时候可以在相中发现多了一个dist文件夹,里面包括一个css文件,js文件和index.html5项目最终上线的内容是打包压缩的,也就是上面的dist文件,整个过程还是很简单的。6需要注意一下,即使项目中仅仅修改了一丁点东西,都需要重新进行打包,执行上诉的操作。 发现不同环境变量下有时候打包正常有时候报错经排查 发现报错的打包的控制台会报如下错误,但是构建正常,没有报红
[BABEL] Note: The code generator has deoptimised the styling of /root/.jenkins/workspace/prod-funeral-affair-front-business-pc/node_modules/element-ui/lib/element-ui.common.js as it exceeds the max of 500KB
解决方法:
在项目的根目录下找到 .babelrc 文件,增加 "compact": false ,如:
{
"compact": false,
"presets": ["env", "react", "stage-0"],
"plugins": [
"transform-runtime"
]
}
如果不存在则手动创建该文件,并填写内容如:
{
"compact": false
}当我们将 vue 项目完成后,面临的就是如何将项目进行打包上线,放到服务器中。我使用的是 vue-cli(simple) 脚手架,所以就讲一下如何将项目进行打包,并放到 tomcat 上。如果是 vue-cli (非 simple 脚手架),这篇文章可能有点帮助。地址链接:vue-cli 如何打包上线先来描述一下期间遇到的问题有哪些:1、打包后将 dist 文件夹和 index.html 放到 tomcat,在浏览器中访问时,出现空白页,f12 提示 404。 2、打包好的静态资源均是绝对路径,无法引入进项目,也是 404。1、项目目录结构这是打包后的,所以有 dist 文件夹,打包方式:npm run build。2、webpack.config.js这里只是一小部分,因为这边最关键的就是 publicPath,下面会提,这边可以解决静态资源 404 无法引入的问题。3、npm run build 打包后的文件。npm run build 打包后生成一个 dist 文件夹,这里面的目录:我对 webpack 打包工具的原理不是很清楚,所以文件夹应该生成什么不是了解。我这边是这样子的。主要是一个主要的 build.js, 因为我们的 index.html 引入的就是这个 js 文件。还有一些图片文件和 ElementUI 生成的 ttf 和 woff。4、如何放到服务器中。接下来就是需要将生成的 dist 文件夹和 index.html 文件放到服务器中,只需要这两个。怎么在网页登陆whatsapp网页版首先我将这两个文件放在同一个文件夹中,我命名为 gas(随意)。然后将文件夹放到 tomcat 中,我将文件夹放到 tomcat 的 webapps 文件夹目录下:ok 部署完成,启动 tomcat,你会发现显示一个空白页,一些静态资源都是 404。5、解决空白页和静态资源无法引入的问题。1、首先空白页的问题,可以重 f12 中看出来都是绝对路径的原因,而我们打包后,应该的引入路径是相对路径,这时我们需要的是修改 index.html 页面。看一下没改之前的:看我 /dist/build.js 引用的是绝对路径,这就导致了在 tomcat 去访问 index.html 页面时,报404。我们需要将路径变成相对路径 ./dist/build/。多一个点,很关键。好了到这里应该主页面可以显示了。但是你会发现,我的静态资源,我的图片(不包括 img 形式的引入),例如我在 css 中 background:url() 的图片显示404。2、解决静态资源失效的问题这就需要修改我们的 webpack.config.js 中的 publicPath 了,默认的 vue-cli 脚手架环境搭建好后,publicPath 是这样的:可以看到我们的路径是: /dist/。所以这时候我们如果打开页面,静态资源的路径都会是这样子的,并且报错404:http://10.0.0.181:8088/dist/bg.png?fe9b889cea51978538ce352593be0573显然可以看出和我们想要的路径不一致,上面我贴出来的在 tomcat 的文件目录中我将 dist 和 index.html 都放进了一个 gas 的文件夹中。所以正确的路径应该是这样的:http://10.0.0.181:8088/gas/dist/bg.png?fe9b889cea51978538ce352593be0573看出区别了吗!解决:所以我需要改变一下 webpack.config.js 中的输出路径 publicPath: /gas/dist/。将最外层的文件夹路径加进去,这样就可以将静态资源引入进项目了。ok,到现在为止,最主要的两个问题解决了,一个是 index.html 空白页,另一个是 静态资源路径不正确的问题。6、index.html 页面中的lwhatsapp怎么登录不上去ink 和 srcipt 引用的资源失效问题:原因还是路径的地址不对:妥协的解决方法是:将自己引用的资源手动放到打包出来的 dist 文件夹内,然后在 index.html 中按照 dist 的相对路径进行引用。代码中的 icon.ico 就是我手动将 icon 图标放到 dist 文件夹中,然后按照对应的引用路径进行引用。其他的 css 和 js 引用一样。7、待解决的问题:1、在我的项目中,使用了 ElementUI 框架,但是在打包放到服务器中后,发现按钮样式变了,所有的 padding 失效,所有我只能自己手动进行添加样式。2、在我的 index.html 中如果引入 link css文件时,还是没办法引入相对路径,所以我将 css 样式都放到了各自的组件中的 style 中了,其他的一般都是用 npm 注入依赖的形式进行安装。8、网上搜索到的相关问题和解决方法。1、求助!Vue项目用Webpack打包后放到服务器上,但访WhatsApp中文官网问是空白页?弄了好久了也不知道什么原因 2、vue项目中,npm run build生成的index.html文件只有放在根目录下打开才能生效,怎么解决?3、Vue应用部署到服务器的正确方式运行命令 npm run build:
查看项目是否有dist这个文件夹,有的话就表示成功了:
打开里面的index.html会报错:
解决方案:
1.在build文件里面找到webpack.prod.config.js
在output里面添加publicPath:'./';
找到webpack.base.configjs
完成后对项目进行重新打包
完成以上两步就可以了
如果还有问题:
找到config文件里面的index.js
修改build里面的assetsPublicPath; 这次给大家带来Vue项目应该怎么分环境打包,Vue项目分环境打包的注意事项有哪些,下面就是实战案例,一起来看一下。在项目开发中,我们的项目一般分为开发版、测试版、Pre版、Prod版。Vue-cli的默认环境一只有dev和prod两个,之前每次要发布测试版或Pre版都是修改了源码中API地址后打包,这样很麻烦。如果能根据不同环境打包就完美了。网上搜集了许多资料,现在可以分环境打包程序了,至于怎么打,接着住下看吧。第1步:安装cross-env在项目目录下运行如下命令安装cross-env,我的ide是webstorm,要以直接在ide里的Terminal窗口中运行,也可能通过windows的CMD、Linux的Terminal定whatsapp网页版怎么改好友备注位到项目根目录运行下面的命令。npm i --save-dev cross-env第2步:修改各环境下的参数在config/目录下添加test.env.js、pre.env.js。修改prod.env.js里的内容,修改后的内容如下:'use strict'module.exports = { NODE_ENV: '"production"', EVN_CONFIG:'"prod"', API_ROOT:'"/apis/v1"'}分别对test.env.js和pre.env.js文件内容进修修改,修改后的内容如下:'use strict'module.exports = { NODE_ENV: '"testing"', EVN_CONFIG:'"test"', API_ROOT:'"/test/apis/train"'}'use strict'module.exports = { NODE_ENV: '"presentation"', EVN_CONFIG:'"pre"', API_ROOT:'"/pre/apis/train"'}对dev.env.js文件内容进行修改,修改后的内容如下。dev环境配制了服务代理,API_ROOT前的api是配制的代理地址。module.exports = merge(prodEnv, { NODE_ENV: '"development"', VN_CONFIG: '"dev"', API_ROOT: '"api/apis/v1"'})第3步:修改项目package.json文件对package.json文whatsapp网页版小米官方下载件中的scripts内容进行个性,添加上新定义的几种环境的打包过程,里的参数与前面的调协保持一致。"scripts": { "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js", "start": "npm run dev", "build": "node build/build.js", "build:test": "cross-env NODE_ENV=production env_config=test node build/build.js", "build:pre": "cross-env NODE_ENV=production env_config=pre node build/build.js", "build:prod": "cross-env NODE_ENV=production env_config=prod node build/build.js" },在这里,NODE_ENV最好都设成production,因为在utils.js只做了production一种判定,亲测不会影响各环境API参数。 ##第4步:修改config/index.js修改config/index.js文件中build参数,这里的参数会在build/webpackage.prod.conf.js中使用到build:{ //whatsapp网页版 pc端登录不了; Template for index.html // 添加test pre prod 三处环境的配制 prodEnv: require('./prod.env'), preEnv: require('./pre.env'), testEnv: require('./test.env'), //下面为原本的内容,不需要做任何个性 index:path.resolve(dirname,'../dist/index.html'),第5步:在webpackage.prod.conf.js中使用构建环境参数对build/webpackage.prod.conf.js文件进行修改,调整env常量的生成方式。// 个性env常量的定义// const env = require('../config/prod.env')const env = config.build[process.env.env_config+'Env']第6步:调整build/build.js删除process.env.NODE_ENV的赋值,修改spinner的定义,调整后的内容如下:'use strict'require('./check-versions')()// 注释掉的代码// process.env.NODE_ENV = 'production'const ora = require('ora')const rm = require('rimraf')const path = require('path')const chalk = require('chalk')const webpack = require('webpack')const config = require('../config')const webpackConfig = require('./webpack.prod.conf')// 修改spinner的定义// const spinner = ora('building for production...')var spinner = ora('building for ' + process.env.NODE_ENV + ' of ' + process.env.env_config+ ' mode...' )spinner.start()//更多的其它内容,不需要做任何调整的内容 ...补充:vue2+webpack怎样分环境打包今年有机会做了一个vue2的单页面应用的项目,从开发到上线经历了两个环境。测试环境以及正式环境我都是跑npm run build。这两个环境的变量当前是不一样的,每次打包都要去改变量,感觉有点小麻烦。后来参考同事的,他们项目里面分环境跑不同的命令,得到不同的包。例如测试环境npm run test ,正式环境 npm run build。需在文件config/prod.env.js配置const target = process.env.npm_lifecycle_event;if (target == 'test') {//测试var obj = {NODE_ENV: 'whatsapp网页版怎么注册不了"production"',//post用当前域名API_ROOT: '""',//数据字典API_ROOT_DICT:'"http://test.gw.fdc.com.cn"',}}else {//线上var obj = {NODE_ENV: '"production"',//post用当前域名API_ROOT: '"whatsapp方法营销"',//数据字典API_ROOT_DICT:'"http://gw.fdc.com.cn"',}}module.exports = obj;npm 提供一个npm_lifecycle_event变量,返回当前正在运行的脚本名称,比如pretest、test、posttest等等。所以,可以利用这个变量,在同一个脚本文件里面,为不同的npm scripts命令编写代码。相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!推荐阅读:Vue中的slots/scoped slots应该如何使用vue组件中slot插口的使用详解前言在使用vue.js开发前端项目时,再结合webpack搞起各种依赖、各种插件进行开发,无疑给前端开发带来了很多便捷,就在解决跨域这个问题上,相信众多用vue.js的前端同僚们同我一样尝到了甜头,开发环境全靠proxyTable一通配置简直不要太酸爽。还不明所以然的新手们可能还没搞清我说的是什么,就是下面这几行配置:proxyTable: { '/api': { target: 'http://113.113.113.113:50whatsapp 打开对话框 就在输入中00', //假的接口地址哈 changeOrigin: true, pathRewrite: { '^/api': '' } },我们的跨域竟然就这样完美的解决了,然后就开始愉快的请求后端的接口啦!!回到正题具体场景:公司的一个h5项目是部署在客户端的,但是部署后出现bug了,由于多人协同开发且赶进度竟然是打包后因为CSS的问题多个页面布局乱了,但是开发环境并没有问题啊,怎么打完包样式就乱了?那就打开dist下的index.html看看呗,复现一下bug,想都不用想,页面没数据怎么复现,再去造一套假数据?作为一个不喜欢这样折腾的人必然是不想做这种事情的。就不劳烦后端了,咱自己解决!nginx 还是要会一些些的,自己配置一下,分分钟解决,哈哈!server { listen 8082; server_name 127.0.0.1; //咱自己nginx服务器地址 #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; } location /app-api { rewrite ^.+app-api/?(.*)$ /$1 break; include uwsgi_params; proxy_pass http://113.113.113.113:5001/; //后端接口地址 //关键部分start add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS'; add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,token'; //关键部分end //以下配置参见nginx配置文档哈 #Proxy Settings proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Connection close; proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; proxy_max_temp_file_size 0; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; }}目的是把后端接口用 nginx 再代理一遍,咱自己用 nginx 间接允许一下跨域请求!start nginx //在nginx目录启动服务通常我们会做一个统一的管理接口的js文件,如下形式var BASE_URL = '/api';var isPro = process.env.NODE_ENV === 'production'if(isPro){ BASE_URL= 'httpwhatsapp翻译功能在哪://113.113.113.113:5000', //线上或者测试地址 //BASE_URL= 'http://127.0.0.1:8020', //nginx代理地址 //当我们需要打包后依然能正常调接口的时候用这个 }const UrlConfig = { getToken:BASE_URL + "某接口"}export default { UrlConfig};至此,就把打包后接口跨域的问题优雅的解决啦。结语因为公司的前后端项目通常都放在同一台服务器,或者不在同一台服务器的时候跨域也是靠后端的同志们去解决的,所以很少在生产环境中靠前端解决跨域的这项需求。不过我分享的这个小技巧也只适用于以上类似场景中,归根结底还是要在多人协同开发的过程中提前规划好公共以及个人的编程规范,尽量保证开发环境和生产环境是一致的,就可以摆脱很多类似的问题。你想问vue项目打包后html文件中body标签里生成多个scri,怎么将其合并吗?可以按照以下步骤进行处理:1、打开Vue项目中的vue.config.js文件(如果不存在,请创建该文件)。2、在该文件中添加如下代码:chainWebpack:config=>;config.optimization.delete('splitChunks');3、保存文件并重新运行打包命令。2.修改package.json文件,自定义打包命令
3.修改config文件,添加对应环境的xxx.env.js文件
test.env.js文件
prod.env.js
dev.env.js
4.修改打包配置
打开build/webpack.prod.conf.js文件
修改
build/build.js
写入api文件
api/index.js文件
执行npm run build--test 、npm run build--prod 打包不同环境
WhatsApp网页版请注明:WhatsApp网页版 » 有效的whatsapp网页版消息群发 whatsapp二维码怎么保存