当前位置: 首页 > wzjs >正文

php 打开网站做旅游计划上哪个网站

php 打开网站,做旅游计划上哪个网站,网站建设的重难点分析,移动端关键词排名优化[TOC](vue2 插值语法中使用可选链运算符(.?)compile异常排查思路) 前言 最近接到组内前端求助&#xff0c;在使用v-for进行动态渲染的时候项目突然不能正常编译了&#xff0c;报错提示SyntaxError: Unexpected token ...十分奇怪 代码可参考如下&#xff1a; <h3>动态…

@[TOC](vue2 插值语法中使用可选链运算符(.?)compile异常排查思路)

前言

最近接到组内前端求助,在使用v-for进行动态渲染的时候项目突然不能正常编译了,报错提示SyntaxError: Unexpected token ...十分奇怪
在这里插入图片描述
代码可参考如下:

      <h3>动态渲染内容</h3><el-row v-for="(item, index) in form.subObjList" :key="index" :gutter="12" :style="{ background: '#edfced' }"><el-col> {{item?.projectNameLabel}}:{{item?.projectName}}</el-col><el-col> {{item?.technicalPointLabel}}:{{item?.technicalPoint}}</el-col><el-col> {{item?.mainFunctionLabel}}:主要功能:{{item?.mainFunction}}</el-col><el-col> {{item?.difficultyLabel}}:{{item?.difficulty}}</el-col><el-col><hr></el-col></el-row>

待渲染的数据

      this.form.subObjList = [{ projectNameLabel: '项目名称',projectName: 'xx项目前端',technicalPointLabel: '技术点',technicalPoint: 'vue vuex vue-router js',mainFunctionLabel: '主要功能',mainFunction: '前端交互ux整改,完善用户体验',difficultyLabel: '难点',difficulty: '大批量数据渲染'},{ projectNameLabel: '项目名称',projectName: 'xx项目后端',technicalPointLabel: '技术点',technicalPoint: 'springboot mybatis redis pgsql',mainFunctionLabel: '主要功能',mainFunction: '支持用户的特定业务流程',difficultyLabel: '难点',difficulty: '大批量数据校验'}]

排查思路

把新增的代码区域el-row以及内部el-col注释掉,重新加载检查编译情况,这时能成功编译
接着在放开el-row新增自定义el-col,重新加载检查编译情况,能够成功编译和渲染

      <h3>动态渲染内容</h3><el-row v-for="(item, index) in form.subObjList" :key="index" :gutter="12" :style="{ background: '#edfced' }"><el-col>heheda</el-col>
<!--        <el-col> {{item?.projectNameLabel}}:{{item?.projectName}}</el-col>-->
<!--        <el-col> {{item?.technicalPointLabel}}:{{item?.technicalPoint}}</el-col>-->
<!--        <el-col> {{item?.mainFunctionLabel}}:主要功能:{{item?.mainFunction}}</el-col>-->
<!--        <el-col> {{item?.difficultyLabel}}:{{item?.difficulty}}</el-col>-->
<!--        <el-col><hr></el-col>--></el-row>

在这里插入图片描述
观察到插值语法中的可选链运算符(.?)比较怪,于是选取一个el-col去掉.?并放开注释,可以正常渲染
在这里插入图片描述
再次加上.?,重现了编译失败
在这里插入图片描述
由此可以确认是在插值语法中使用可选链运算符(.?)引起的

临时解决措施

去掉可选链运算符(.?),与前端确认,此处动态渲染的数据需请求接口得到,item的属性没有在data()中申明,所以使用(.?)来避免一些潜在的问题

后续

处理完这个问题后,计划在个人PC上复现,但是并没有复现成功(环境为vue 3.4.28 & node 18.20.4
),经过搜查发现该问题会在vue2低版本上出现,此时相应的node.js版本不支持在插值语法中使用可选链运算符,于是搭建了(vue 2.6.10 & node 14.16),确实成功复现了这个问题。求助的项目vue版本为2.5.x,考虑到不久后该项目就会升级vue 3,所以没有深究如何在vue 2中实现插值语法可以使用可选链运算符号。
此处分享在vue3中该案例的完整代码:

<template><div><h3>Welcome</h3><el-form :model="form" label-width="100px"><el-row :gutter="20"><el-col :span="12"><el-form-item label="姓名"><el-input v-model="form.name"></el-input></el-form-item></el-col><el-col :span="12"><el-form-item label="年龄"><el-input v-model="form.age"></el-input></el-form-item></el-col></el-row><el-row :gutter="20"><el-col :span="8"><el-form-item label="地址"><el-input v-model="form.address"></el-input></el-form-item></el-col></el-row><h3>动态渲染内容</h3><el-row v-for="(item, index) in form.subObjList" :key="index" :gutter="12" :style="{ background: '#edfced' }"><el-col> {{item?.projectNameLabel}}:{{item?.projectName}}</el-col><el-col> {{item?.technicalPointLabel}}:{{item?.technicalPoint}}</el-col><el-col> {{item?.mainFunctionLabel}}:主要功能:{{item?.mainFunction}}</el-col><el-col> {{item?.difficultyLabel}}:{{item?.difficulty}}</el-col><el-col><hr></el-col></el-row></el-form><button @click="setRenderInfo">动态渲染赋值</button><button @click="clearRenderInfo">动态渲染清空</button></div>
</template><!--vue3写法-->
<!--<script setup lang="ts" name="About">
import { reactive, ref } from 'vue'
import type { ComponentSize, FormProps } from 'element-plus'let form = {name: '松树戈',age: '66',address: '这里',secondLabel: '我就是第二个标题',subObjList: []}
// 模拟远程请求后对subObjList进行赋值
form.subObjList = [{ projectNameLabel: '项目名称',projectName: 'xx项目前端',technicalPointLabel: '技术点',technicalPoint: 'vue vuex vue-router js',mainFunctionLabel: '主要功能',mainFunction: '前端交互ux整改,完善用户体验',difficultyLabel: '难点',difficulty: '大批量数据渲染'},{ projectNameLabel: '项目名称',projectName: 'xx项目后端',technicalPointLabel: '技术点',technicalPoint: 'springboot mybatis redis pgsql',mainFunctionLabel: '主要功能',mainFunction: '支持用户的特定业务流程',difficultyLabel: '难点',difficulty: '大批量数据校验'}
]
</script>-->
<!--vue2写法-->
<script>export default {data() {return {form: {name: '松树戈',age: '66',address: '这里',secondLabel: '我就是第二个标题',subObjList: []}}},mounted() {console.log('在-mounted内部')},methods: {setRenderInfo() {this.form.subObjList = [{ projectNameLabel: '项目名称',projectName: 'xx项目前端',technicalPointLabel: '技术点',technicalPoint: 'vue vuex vue-router js',mainFunctionLabel: '主要功能',mainFunction: '前端交互ux整改,完善用户体验',difficultyLabel: '难点',difficulty: '大批量数据渲染'},{ projectNameLabel: '项目名称',projectName: 'xx项目后端',technicalPointLabel: '技术点',technicalPoint: 'springboot mybatis redis pgsql',mainFunctionLabel: '主要功能',mainFunction: '支持用户的特定业务流程',difficultyLabel: '难点',difficulty: '大批量数据校验'}]},clearRenderInfo() {this.form.subObjList = []}}}
</script>
<style scoped>
.about {display: flex;justify-content: center;align-items: center;height: 100%;color: rgb(85, 84, 84);font-size: 18px;
}
</style>

demo项目完整代码:

码云
gitehub


文章转载自:

http://eBIslX1P.ykrkb.cn
http://qrT6vNkU.ykrkb.cn
http://eyV07lag.ykrkb.cn
http://ZmxDREuQ.ykrkb.cn
http://rFXjW2aF.ykrkb.cn
http://aoVEjW7Z.ykrkb.cn
http://xBIPGjDg.ykrkb.cn
http://zpkoue7V.ykrkb.cn
http://jQmoltL1.ykrkb.cn
http://duU8yjgS.ykrkb.cn
http://Q44Pr6DF.ykrkb.cn
http://Dvys7dCA.ykrkb.cn
http://u8kpioBg.ykrkb.cn
http://BdET7V7x.ykrkb.cn
http://7OKnfGGZ.ykrkb.cn
http://nmwH8d0Z.ykrkb.cn
http://vBIRZCc5.ykrkb.cn
http://aWtudVdd.ykrkb.cn
http://Hl68zMtk.ykrkb.cn
http://A2Mw4a7a.ykrkb.cn
http://ZdjsSzEO.ykrkb.cn
http://q0raQcLr.ykrkb.cn
http://Oz2blXeL.ykrkb.cn
http://Ep8jDMo7.ykrkb.cn
http://8MYvRImS.ykrkb.cn
http://rBGoGlUB.ykrkb.cn
http://Dkxm5DG6.ykrkb.cn
http://9uDXwPcW.ykrkb.cn
http://vrPsnPXo.ykrkb.cn
http://STtipXHx.ykrkb.cn
http://www.dtcms.com/wzjs/669447.html

相关文章:

  • c语言软件开和网站开发区别h5免费制作平台八图
  • 自己做电影网站违法专门做网站的公司
  • 息县网站建设wordpress的title设置
  • 南山网站制作北京市住房城乡建设门户网站
  • 后台网站更新 网站没显示中国企业500强各省数量
  • 上行2m可以做网站商城网站模板免费下载
  • net公司网站开发框架源代码wordpress 免费APP
  • 网站建设英文方案网站建设的电销
  • 云访客类似的网站识万物扫一扫
  • 做宣传海报的网站网站开发做什么科目
  • 网站建设成功案例书籍app开发公司图片
  • 网站换程序301注册推广赚钱一个80元
  • 磁力网站怎么做莆田网站建设外贸
  • 帮助做问卷调查的网站最正规二手手表平台
  • 如何选择邯郸网站建设怎么自己做免费网站
  • 网站判断手机跳转代码wordpress音乐盒
  • 注册网站的好处发软文在哪个网站找文章最好
  • 做网站要备案吗南溪门户网
  • 做网站自适应框架seo辉煌电商平台
  • 网站建设 猴王网络有实力公司简介模板300字
  • 郫县网站建设兼职wordpress手机端网站模板下载
  • 做博客网站要什么技术黄页88官网登录
  • 国家建设局网站首页建设网站需要注意什么问题
  • 公司网站建设软件下载中核集团2023校园招聘信息
  • 网站教人做核能灯免费24小时在线心理医生
  • 防城港市网站建设网站开发的内容
  • 网站集群建设必要性电商设计需要具备什么
  • 做淘客的网站名称重庆网站推广多少钱
  • 建站高端网站网络公司如何建网站
  • html网站首页wordpress 学术 模板