问题描述: 我们知道一般的百度统计代码是添加在html的head里的:但是,因为目前项目是用vue开发的单页应用,所以在路由跳转之间不会刷新页面, 统计代码如果放在项目里的index.heml的head里,我们就只能统计到整个项目的入口流量,其它内页无法实现统计.而且目前项目需要根据 不同的业务和城市添加对应的统计代码:那么只能采取下面的方法: 实现方式: 1.封装一个全局变量文件,每个城市下面对应所有业务,每个业务对应一个方法里面放统计代码. 2.在项目入口文件里的methods内封装一个方法…
作为一名开发人员,每次接到开发任务,我们首先应该先分析需求,然后再思考技术方案和解决方案.三思而后行,这是一个好的习惯. 需求:本项目是采用vue组件化开发的单页应用项目,现需要在项目中引入百度的地图展示功能,用于展示所有项目的分布情况.搜索功能(省略,不是这里介绍的内容)....... 交互:选中左侧的项目,选中项高亮,自动定位到右侧地图中项目所在位置,并弹出项目的基本信息.点击右侧的项目,自动高亮显示左侧的项目,并滚动到项目所在位置.地图支持聚合和缩放. 项目运行效果如下图所示: 接下来开始…
vue 单页应用中微信支付的坑 标签(空格分隔): 微信 支付 坑 vue 场景 在微信H5页面(使用 vue-router2 控制路由的 vue2 单页应用项目)中使用微信 jssdk 进行微信支付. 基本知识 1.依据微信jssdk官方文档,使用微信功能的页面,必须进行微信 config,并在wx ready 之后再调用微信功能. 2.进行微信支付的话,需要在微信开放平台配置微信支付合法路径.该合法路径有层级限制,比如需要支付的页面的url为 https://example.com/redp…
百度统计是流量分析平台,帮助收集网站访问数据,提供流量趋势.来源分析.转化跟踪.页面热力图.访问流等多种统计分析服务,同时与百度搜索.百度推广.云服务无缝结合,为网站的精细化运营决策提供数据支持,进而有效提高企业的投资回报率. 一.百度统计添加网站 登录百度统计: https://tongji.baidu.com 管理->新增网站 复制以上代码到个人站点中 二.Wordpress添加百度统计代码 登录到wordpress管理后台->外观->编辑 选择要编辑的主题->主题文件->…
实践场景需求 产品列表中,滚动到一定位置的时候,点击查看产品信息,后退之后,需要回到原先的滚动位置,这是常见的需求 所有页面均在router-view中,暂时使用了keep-alive来缓存所有页面,所以进入不同分类的产品列表,和不同的产品详情页面,需要更新数据 首先注意: 本次实践测试环境为pc端的webkit内核浏览器,手机暂时不测试 使用$router.back(-1) 和浏览器后退按钮效果一样 必须使用keep-alive缓存路由页面才能记住上次的位置,否则使用浏览器后退或$router…
使用VUE开发单页项目时遇到这样的问题,mounted中使用setInterval()定时向服务器获取数据,后来跳转页面后,发现还在不停的获取数据.我以为是因为我路由用的push导致的,改成replace也是这样,后来就在博客园找到答案了,如下: http://www.cnblogs.com/zzbp/p/5834110.html 问题:(javascript)使用Vuejs + Vue-router 开发单页面,如何使得切换页面时能销毁原组件?描述: 我有一个单页面应用,有页面A和页面B,二者…
引言 前端webapp应用为了追求类似于native模式的细致体验,总是在不断的在向native的体验靠拢:比如本文即将要说到的功能,native由于是多页应用,新页面可以启用一个的新的webview来打开,后退其实是关闭当前webview,其上一个webview就自然显示出来:但是在单页的webapp应用中,所有内容其实是在一个页面中展示的,不存在多页的情况,这时就需要前端开发来想办法实现相应的体验效果. 首先需要说明一下,本文所说的前进刷新后退不刷新是指组件是否重新渲染,比如列表A页面,点击…
前言 申请百度统计后,会得到一段JS代码,需要插入到每个网页中去,在Vue.js项目首先想到的可能就是,把统计代码插入到index.html入口文件中,这样就全局插入,每个页面就都有了;这样做就涉及到一个问题,Vue.js项目是单页应用,每次用户浏览网站时,访问内页时页面是不会刷新的,也就意味着不会触发百度统计代码:所以最终在百度统计后台看到的效果就是只统计到了网页入口的流量,却无法统计到内页的访问流量. 解决方法 在main.js文件中调用vue-router的afterEach方法,将统计代…
作为vue的初级使用者,在开发过程中遇到的坑太多了.在看页面的时候发现了页面滚动的问题,当一个页面滚动了,点击页面上的路由调到下一个页面时,跳转后的页面也是滚动的,滚动条并不是在页面的顶部 在我们写路由的时候做个处理,如下: import Vue from 'vue' import Router from 'vue-router' Vue.use(Router); Vue.use(Router) export default new Router({ routes: [ { path: '/',…
前言 申请百度统计后,会得到一段JS代码,需要插入到每个网页中去,在Vue.js项目首先想到的可能就是,把统计代码插入到index.html入口文件中,这样就全局插入,每个页面就都有了;这样做就涉及到一个问题,Vue.js项目是单页应用,每次用户浏览网站时,访问内页时页面是不会刷新的,也就意味着不会触发百度统计代码:所以最终在百度统计后台看到的效果就是只统计到了网页入口的流量,却无法统计到内页的访问流量. 解决方法 在main.js文件中调用vue-router的afterEach方法,将统计代…
代码地址如下:http://www.demodashi.com/demo/13374.html 目录结构 src目录 主要的代码目录 components 存放项目组件 router 路由文件 store store文件 main.js 最终被打包到build文件 statics 静态文件 idnex.html 项目入口文件 webpack.config.js webpack配置文件 主要代码 入口index.html文件 <!DOCTYPE html> <html> <he…
基于node npm & vue-cli & element UI创建vue单页应用 开发环境   Win 10   node-v10.15.3-x64.msi 下载地址: https://nodejs.org/en/ 安装node 安装vue-cli 1.安装node-v10.15.3-x64.msi 2.设置注册地址 因为npm官方仓库在国外,有时候下载速度会非常慢,不过有淘宝镜像可以使用,下载包的速度很快.而且淘宝镜像是定时更新同步npm的官方仓库的. npm config set…
申请百度统计后,会得到一段JS代码,需要插入到每个网页中去,在Vue.js项目首先想到的可能就是,把统计代码插入到index.html入口文件中,这样就全局插入,每个页面就都有了;这样做就涉及到一个问题,Vue.js项目是单页应用,每次用户浏览网站时,访问内页时页面是不会刷新的,也就意味着不会触发百度统计代码:所以最终在百度统计后台看到的效果就是只统计到了网页入口的流量,却无法统计到内页的访问流量. 解决方法 在main.js文件中调用vue-router的afterEach方法,将统计代码加入…
vue新人,没有高级技巧 本文主要总结了使用vue-cli脚手架安装开发环境,使用vue.js等进行单页应用开发所遇问题的总结. 技术栈: Vue v1.0.21, vue-resource v0.91, vue-router v0.7.13,webpack v1.12.2,vue-cli 开发中注意所使用的库的版本! 项目中问题总结: 一:ESlint验证相关报错 ESlint中默认没有alert.使用 "===" 作为比较.不使用双引号等. 但是可以在.eslintrc.js 文件…
前端微信分享的基本步骤: 一.绑定域名: 先登录微信公众平台进入"公众号设置"的"功能设置"里填写"JS接口安全域名".这个不多说,微信开发的都应该清楚. 二.引入js文件: 在需要调用JS接口的页面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/jweixin-1.0.0.js.请注意,如果你的页面启用了https,务必引入 https://res.wx.qq.com/open/js/jweixi…
若文章中存在内容无法加载的情况,请移步作者其他博客. 简书 CSDN 最近在看 Vue 的时候,别人给我安利了一个国外的小案例,通过 Vue 和 Vuex 来实现一个记事本. 仔细剖析下,发现“麻雀虽小,五脏俱全”,是一个挺适合初学者学习分析的一个案例,所以自己也将自己的学习过程整理,得出本文. 国际惯例,首先感谢原文作者. 参考案例传送门: Learn Vuex by Building a Notes App 之后是内容声明: 原文是2016年 4 月 20 日就出现了的,所以很多小伙伴可能已…
https://www.jianshu.com/p/b980725b62e8 https://www.npmjs.com/package/vue-wechat-title 详细信息查看:vue-weachat-title 解决问题: 1.Vuejs 单页应用在iOS系统下部分APP的webview中 标题不能通过 document.title = xxx 的方式修改 该插件只为解决该问题而生(兼容安卓) 2.在vue单页面中,通过浏览器分享到QQ.微信等应用中的链接,只有一个首页标题和默认ico…
背景 随着项目的成长,单页spa逐渐包含了许多业务线 商城系统 售后系统 会员系统 ... 当项目页面超过一定数量(150+)之后,会产生一系列的问题 可扩展性 项目编译的时间(启动server,修改代码)越来越长,而每次调试关注的可能只是其中1.2个页面 需求冲突 所有的需求都定位到当前git,需求过多导致测试环境经常排队 基于以上问题有了对git进行拆分的技术需求.具体如下 目标 依然是spa 由于改善的是开发环境,当然不希望拆分项目影响用户体验.如果完全将业务线拆分成2个独立页面,那么用户…
问题描述: 最近开发了一个单页应用,上线后发现页面初始加载要20s才能完成,这就很影响用户体验了,于是分析原因,发现页面加载时有个 vendor.js达到了3000多kb,于是在网上查找了一下原因,是因为我打包的时候把所有第三方依赖都打包放进去了:要怎么分离出去呢, 看下面步骤: 一.解决打包后vendor.js 很大,导致上线后页面首次加载速度异常慢: vue-cli npm run build命令默认把dependencies中的依赖统一打包,导致vendor.js文件过大,出现首屏加载过于…
对于单页应用,要在一个页面上为用户提供产品的所有功能,在这个页面加载的时候,首先要加载大量的静态资源,这个加载时间相对比较长.所以我们需要做一些相应的优化,减少响应时间,尽快把首屏显示出来. 1.压缩代码 无论是否为单页应用,代码的压缩都是要做的. 对于vue-cli生成的项目,在Webpack配置文件中使用了UglifyJsPlugin进行代码的压缩: //webpack.prod.conf.jsplugins: [ ...... new UglifyJsPlugin({ uglifyOpti…
CodeIgniter(3.1.4)框架中添加,执行时间统计代码: system/core/CodeIgniter.php最后行处. /* * ------------------------------------------------------ * custom code snippet. * ------------------------------------------------------ * * Statistic run time. * */ p($BM->marker)…
前言:当前 SPA 架构流行的趋势如日中天,前后端分离的业务模式已经成为互联网开发的主流方式,但是 单页面 应用始终存在一个痛点,那就是 SEO, 对于那些需要推广,希望能在百度搜索时排名靠前的网站而言,使用单页面应用的是无法被 百度的 蜘蛛 爬到的,为此,众多流行的 MVVM 框架都推出了 很多解决方案,有官方的也有三方的,VUE也不例外,本文章就来分享一下 vue-cli 结合 prerender-spa-plugin 插件这种预渲染的 SEO 优化解决方案 1,使用 vue-cli 创建一…
1.config index.js下面的跨域代理设置: proxyTable: { '/api': { target: 'http://xxxx', //要访问的后端接口 changeOrigin: true, pathRewrite: { '^/api': 'http://xxx' } }, }, 2.http.js(封装axios) import Vue from 'vue' import axios from 'axios' import QS from 'qs' //视情况用于不用; i…
APICloud新建项目后,会生成以下目录结构 其中index.html是入口文件,而vue-cli打包生成的文件是在dist目录下 ├─dist│ └─static│ ├─css│ └─js │ └─index.html 把dist目录中的static文件夹和index.html复制到apicloud的项目文件中即可,覆盖原来的index.html.最终apicloud的目录结构只是比原来多了一个static目录. vue项目中需要做如下配置,config/index.js中需要把build的…
APP打包工具:hbuilder 需要js包:mui.js ,引入方法https://www.cnblogs.com/v616/p/11290281.html 实现原理:在vue根组件App.vue监听安卓机,按后退键时候vue的路由path 代码App.vue 代码片段: data() { return { tabbarShow:true, arrTab:['/home','/cat','/history','/me'] }; }, mounted(){ // 安卓后退键 this.$mui.…
个人见解如下: 单页面应用(SinglePage Web Application  )简称:SPA 多页面应用 (MultiPage Application) 简称:MPA 组成一个外壳和多个页面片段组成多个完整页面,构成资源共用(css,js),只需在外壳部分加载不共用,每个页面都需要加载 区别: 刷新方式 SPA:  页面局部刷新或更改 MPA: 整页刷新 url模式 SPA:  a.com/#/pageone    a.com/#/pagetwo MPA:    a.com/pageone…
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title><%= title %></title> <link rel="stylesheet" href="/css/style.css"> <script src="/js/vue.m…
如下图:   1.安装node.js webpack node -v 查看版本 webpack -v 2.安装脚手架 vue-cli npm install -g vue-cli 3. 在项目文件夹创建项目(如上图) vue init webpack-simple zbsq( ) vue init webpack zbsq( ) npm install 4.npm run dev 启动本地环境预览页面 5.npm run build 打包文件   常见问题: 1.打包把js打包在一个文件,防止白…
周末开发了一个在 GitHub 中给 repo 增加自定义备注的 chrome 扩展. 开发这个扩展的原因是我在 GitHub 中所 star 的项目实在太多了(截止目前 671 个),有的项目过个几天回来看就忘了为什么 star 了,有的轮子想找的时候发现忘记叫什么了,这么多一个个找实在浪费时间.于是我一直在想有这么个工具,可以自定义对 GitHub 中的项目进行备注,然后可以根据备注进行搜索,于是便有了这个扩展. 如需安装体验请点击 GitHub Remarks 进行安装,源码移步 gith…
在写单文件组件时,一般都是把标签.脚本.样式写到一起,这样写个人感觉有点不够简洁,所以就想着把样式分离出去. 采用import加载样式 在局部作用域(scoped)采用@import加载进来的样式文件,想法是美好的.以为这样加载进来的样式文件也只对当前组件有效:可现实是残酷的,这样加载进来的样式无法限制其作用域. <style scoped> @import "样式文件"; </style> 解决方案 采用 src属性加载样式. <style src=&q…