vue响应式的注意事项
在html中出现无法显示对象属性的情况,可能是需要在初始化对象时,先定义好属性。
<template>
<div>
<div v-else class="req-more">
<div class="line"></div>
<p class="p-header">回单信息:</p>
<van-card>
<div slot="thumb">
<img :src="feedBackData.img" alt="" class="card-img"/>
</div>
<div slot="title">
<span style="">卡号:{{feedBackData.colorCode}}</span>
<span class="req-feedback" style="color: red">{{feedBackData.acceptDate}}</span>
</div>
<div slot="desc" style="margin: 15px 0">
<span>版价:{{feedBackData.price}}</span>
<span class="req-feedback">{{feedBackData.sendSatus}}</span>
</div>
<div slot="tags">
<span>价格:{{feedBackData.samplePrice}}</span>
<span class="req-feedback">
<van-button class="bt-check bt-bright" @click="goSupplier">
查看
</van-button>
</span>
</div>
<div slot="footer" v-if="express.number" style="padding: 20px 0">
<span style="float: left;line-height: 30px">物流信息:{{express.company}}|{{express.number}}</span>
<span class="req-feedback">
<van-button class="bt-check bt-bright" @click="copyNumber">
复制快递单号
</van-button>
</span>
</div>
</van-card>
</div>
</div>
</template> <script>
import {formatDate, CUSTOMIZE, TYPE, CLOTHSTYLE, SENDSTATUS, BASEURL, API, pushHistory} from '../../assets/js/common.js'
import {handleClipboard} from '../../assets/js/clipboard'
import BigImg from '../../../src/components/BigImg' export default {
components: {'big-img': BigImg},
data () {
return {
feedBackData: { // 初始化的时候就要带有属性,如果只是 feedBackData:{}, 然后在getFeedBackData()方法中写入属性-值 键值对,在html中是不会自动响应更新的!!
'img': '',
'colorCode': '',
'price': '',
'samplePrice': '',
'acceptDate': '',
'sendSatus': ''
},
express: {}
}
},
created () {
this.flag = sessionStorage.getItem('flag')
this.providerId = sessionStorage.getItem('providerId')
this.inquiryId = sessionStorage.getItem('inquiryId')
if (this.flag === 'g') { // 已经接单了,可以获取回单信息
this.getFeedBackData()
}
},
methods: {
getFeedBackData () { // 获取回单信息
let url = API + '/show.do?'
let formdata = {
'cmd': 'getInquiryReceiptList',
'userId': this.providerId,
'page': 0,
'pageSize': 10,
'inquiryId': this.inquiryId,
'status': -1
}
if (this.providerId <= 0 || this.inquiryId <= 0) { // Id异常
alert('this.providerId:' + String(this.providerId) + ',this.inquiryId:' + String(this.inquiryId))
return false
}
this.axios.post(BASEURL + url, this.qs.stringify(formdata)).then(res => {
if (res.exId) {
alert(res.desc)
} else {
// item.receiptList[0]?item.receiptList[0].colorCardCode||'':''
this.feedBackData['img'] = res.data.list[0] ? res.data.list[0].imgUrlListValue[0] : require('../../assets/zsi.png')
this.feedBackData['colorCode'] = res.data.list[0] ? res.data.list[0].colorCardCode : 'ASD00000000'
this.feedBackData['price'] = String(res.data.list[0].unitPrice) + '/米'
this.feedBackData['samplePrice'] = String(res.data.list[0].samplePrice) + '/米'
this.feedBackData['acceptDate'] = formatDate(res.data.list[0].createTime)
this.feedBackData['sendSatus'] = SENDSTATUS[res.data.list[0].status]
}
})
}
}
}
</script> <style scoped>
@import '../../assets/css/mycss.css';
</style>

参考官方文档
https://cn.vuejs.org/v2/guide/reactivity.html#%E6%A3%80%E6%B5%8B%E5%8F%98%E5%8C%96%E7%9A%84%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9
vue响应式的注意事项的更多相关文章
- 浅谈Vue响应式(数组变异方法)
很多初使用Vue的同学会发现,在改变数组的值的时候,值确实是改变了,但是视图却无动于衷,果然是因为数组太高冷了吗? 查看官方文档才发现,不是女神太高冷,而是你没用对方法. 看来想让女神自己动,关键得用 ...
- 深入探讨vue响应式原理
现在是时候深入一下了!Vue 最独特的特性之一,是其非侵入性的响应式系统.数据模型仅仅是普通的 JavaScript 对象.而当你修改它们时,视图会进行更新.这使得状态管理非常简单直接,不过理解其工作 ...
- 深度解析 Vue 响应式原理
深度解析 Vue 响应式原理 该文章内容节选自团队的开源项目 InterviewMap.项目目前内容包含了 JS.网络.浏览器相关.性能优化.安全.框架.Git.数据结构.算法等内容,无论是基础还是进 ...
- Vue源码--解读vue响应式原理
原文链接:https://geniuspeng.github.io/2018/01/05/vue-reactivity/ Vue的官方说明里有深入响应式原理这一节.在此官方也提到过: 当你把一个普通的 ...
- vue响应式数据变化
vue响应式数据变化 话不多说,先上代码: //拷贝一份数组原型,防止修改所有数组类型变量的原型方法 let arrayProto = Array.prototype;// 数组原型上的方法 let ...
- Vue响应式原理及总结
Vue 的响应式原理是核心是通过 ES5 的保护对象的 Object.defindeProperty 中的访问器属性中的 get 和 set 方法,data 中声明的属性都被添加了访问器属性,当读取 ...
- 详解Vue响应式原理
摘要: 搞懂Vue响应式原理! 作者:浪里行舟 原文:深入浅出Vue响应式原理 Fundebug经授权转载,版权归原作者所有. 前言 Vue 最独特的特性之一,是其非侵入性的响应式系统.数据模型仅仅是 ...
- vue响应式原理,去掉优化,只看核心
Vue响应式原理 作为写业务的码农,几乎不必知道原理.但是当你去找工作的时候,可是需要造原子弹的,什么都得知道一些才行.所以找工作之前可以先复习下,只要是关于vue的,必定会问响应式原理. 核心: / ...
- 深入Vue响应式原理
深入Vue.js响应式原理 一.创建一个Vue应用 new Vue({ data() { return { name: 'yjh', }; }, router, store, render: h =& ...
随机推荐
- 2019.10.24 CSP%你赛第二场d1t3
题目描述 Description 精灵心目中亘古永恒的能量核心崩溃的那一刻,Bzeroth 大陆的每个精灵都明白,他们的家园已经到了最后的时刻.就在这危难关头,诸神天降神谕,传下最终兵器——潘少拉魔盒 ...
- Leetcode(8)字符串转换整数
Leetcode(8)字符串转换整数 [题目表述]: 请你来实现一个 atoi 函数,使其能将字符串转换成整数. 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止. 当我 ...
- springboot pagehelper分页无效
springboot pagehelper分页无效 遇到的问题把所有的数据都查出来了 -然后跟踪代码发现PageHelper.startPage没有生效,生成的sql也没有分页的信息 依赖也引入了 & ...
- 利用SpringBoot+Logback手写一个简单的链路追踪
目录 一.实现原理 二.代码实战 三.测试 最近线上排查问题时候,发现请求太多导致日志错综复杂,没办法把用户在一次或多次请求的日志关联在一起,所以就利用SpringBoot+Logback手写了一个简 ...
- vue进入新页面,与原页面滚动到相同高度的解决方案
可以在vue路由新增scrollBehavior,控制跳转页面高度 import Router from 'vue-router' new Router({ scrollBehavior (to, f ...
- SpringCloud之Feign和Ribbon的选择(五)
Ribbon Ribbon 是一个基于 HTTP 和 TCP 客户端的负载均衡器它可以在客户端配置 ribbonServerList(服务端列表),然后轮询请求以实现均衡负载它在联合 Eureka 使 ...
- Java 生成在线二维码 以Base64返回前端、或者写入到本地磁盘
思路 现阶段遇到这样一个问题,在原有的产品上加入线下优惠券模式,用户领取优惠券以后,获取到一个唯一的ID作为领取凭证,但是在线下用扫码枪进行扫码的时候,总不能让人手动输入吧 于是乎就想出了一个办法,后 ...
- SAP Web Service简介与配置方法
[版权声明]本文为博主原创文章,转载请在明显位置注明出处. 一. SAP Web Service简介 二. SAP Web Service配置准备工作 1. 通过RZ10配置服务器名称和其他参数 2. ...
- 第四十章 POSIX条件变量
条件变量 当一个线程互斥地访问某个变量时,它可能发现在其它线程改变状态之前,它什么也做不了 例如一个线程访问队列时,发现队列为空,它只能等待,只到其它线程将一个节点添加到队列中.这种情况就需要用到条件 ...
- Charles抓取HTTPS数据包方法
设置代理端口8888 ssl代理设置 允许所有地址连接 手机获取证书之前,先在电脑安装证书,需要信任.help-->ssl-proxying-->Install Charles Root ...