当页面出现这个 ,可以使用容错处理(可以阻止报错,但不能解决根本问题)。
容错处理:如果这个值为undefined’ 就会报错 因为不允许赋值undefined 所以用三目运算判断一下 是undefined的话就改成别的值 防止报错
2.阿里图标库的使用(千万不能在 打包好的项目里添加图标,没有作用)
①首先搜索你想要的图标,然后加入购物车,然后添加到项目,
到那个图标管理找我的项目,然后打开,
3.富文本里面 解析出标签(在浏览器里面)
解决:
4.substr和substring函数
substr截取部分字符串,substr(start,length)
start:索引的开始 length:截取的数量
注意:最后记得重新赋值,要不没作用
substring不能有负数 substring(start,stop)
说明:substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。
如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。
5.window下面的parent
parent属性返回当前窗口的父窗口。
语法:window.parent
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<head>
<script>
function openWin(){
window.open('','','width=200,height=100');
alert(window.parent.location);
}
</script>
</head>
<body>
<input type="button" value="打开窗口" οnclick="openWin()">
</body>
</html>
6.我想转发当前页面获取到上个接口的title和图片,需要使用全局变量
链接:https://www.php.cn/xiaochengxu-408112.html
**
7.vue与vue-template-compiler版本不一样如何解决
**
首先,先安装一下依赖:npm install 然后在更新 npm update,去package.json查看版本 是否一致,如果一致项目就可以跑起来了 。
8.小程序轮播组件设置圆角,手机上不显示,如何解决
**
9.qq小程序使用qq:if 与qq:else判断,两个图片的显示隐藏状态,其中一张图片渲染不出来的问题,如何解决,需要使用hidden来判断(微信小程序也会有此问题)
**
解决方式:
10.svn的使用:
①安装svn:
https://blog.csdn.net/qq_42928918/article/details/89346956
https://blog.csdn.net/sinat_37812785/article/details/80243207
②使用svn检出项目:
https://blog.csdn.net/u014298411/article/details/72550851
首先新建一个文件夹,然后右击svn checkout检出,然后填写仓库地址,用户名和密码,然后就好了
用户和密码是项目经理给你创建的
11.小程序swiper组件中bindchange方法:
使用bindchange必须要用current,否则无法触发该事件
12.完整的倒计时案例:
13.css引入外部字体:
遇到的问题:只引入了ttf格式的 但是在浏览器中字体没效果
解决:通过转变ttf格式的 又多引入了两个字体包,svg 和woff的,就出现效果了
转换字体格式的链接:
https://www.fontke.com/tool/convfont
将字体包引入文件夹中,然后再css中使用,例如以下例子
14.Vue中如何使用Echarts并请求接口渲染数据
①饼图
<div id="myChart" style="width:49%;height:500px" />
methods方法中:
cicrleChar(data) {
// 基于准备好的dom,初始化echarts实例
const myChart = this.$echarts.init(document.getElementById('myChart'))
// 绘制图表
this.option = {
title: {
text: '地域已售占比图',
left: 'center'
},
tooltip: {
trigger: 'item'
},
label: {
formatter: '{b}\n {c}',
},
series: [
{
name: '访问来源',
type: 'pie',
radius: ['40%', '70%'],
data: data,
emphasis: {
label: {
show: true
},
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
}
myChart.setOption(this.option)
},
drawCircle() {
var params = {
OID: this.OID,
terminalType: '',
beginDate: '',
endDate: '',
}
RegionSaleList(params).then(res => {
var data = res.data
data = [
{ value: 1048, name: `搜索引擎` },
{ value: 735, name: '直接访问' },
{ value: 580, name: '邮件营销' },
{ value: 484, name: '联盟广告' },
{ value: 300, name: '视频广告' }
]
// for(let i = 0, l = data.length; i < l; i++){
// let item = data[i]
// item.name = `${item.name}\n${item.value}`
// }
this.cicrleChar(data)
})
},
②柱形图
后台返回的数据格式
<div id="lineChart" style="width:49%;height:500px" />
methods中的方法:
lineChar(xData, yData){
console.log(xData, yData)
const myChart = this.$echarts.init(document.getElementById('lineChart'))
myChart.setOption(
{
title: {
text: '每月新增激活柱形图',
left: 'center'
},
xAxis: {
type: 'category',
"axisLabel":{
interval: 0
},
data: xData
},
yAxis: {
type: 'value'
},
series: [{
data: yData,
type: 'bar'
}]
}
)
},
drawLine() {
var params = {
OID: this.OID
}
monthActivation(params).then(res => {
let yearMonth = []
let activationNum = []
res.data.forEach(item => {
yearMonth.push(item.year_month)
activationNum.push(item.activationNum)
})
this.lineChar(yearMonth, activationNum)
})
}