Vue 页面跳转不用router-link的实现代码
程序员文章站
2023-10-18 12:18:48
1、给父页面跳转的地方设置事件
//原来的页面上展示的信息
...
1、给父页面跳转的地方设置事件
//原来的页面上展示的信息 <div v-if="!addshow" class="function"> <el-row> <template slot-scope="scope"> <el-button type="success" size="mini" @click="handleedit(scope.$index, scope.row)">编辑</el-button> //带参数进行编辑 <el-button type="danger" size="mini" @click="handledelete(scope.row)">删除</el-button> </template> </el-row> </div> //要跳转过去的页面用隐藏来代替 <div v-if="addshow" class="add-category "> <el-col :span="20" :offset="2"> <el-form :model="formdata" :rules="rules" ref="formdata" label-position="left"> <el-row> <el-col :span="10"> <el-form-item label="销售区域名称" prop="name"> <el-input v-model="formdata.name"></el-input> //v-model绑定formdata.name(name为需要的字段,formdataw为表格ref绑定的数据) </el-form-item> </el-col> </el-row> <el-col :span="18"> <el-form-item label="销售区域描述"> <el-input type="textarea" :rows="5" v-model="formdata.description"></el-input> </el-form-item> </el-col> <el-col :span="2" :offset="9"> <el-button type="success" @click="handlesubmit('formdata')" >确定</el-button> </el-col> <el-col :span="2" :offset="1"> <el-button @click="oncancel">取消</el-button> </el-col> </el-form> </el-col> </div>
2、js部分
data() { addshow: false //设置要显示的页面部分默认为false,隐藏 checkddistributor: null, }, methods: { // 编辑按钮 handleedit(index,row){ this.checkddistributor = row; //接受传参 this.addshow = true; // addshow为要显示的页面 } } watch: { // 带参数编辑 checkddistributor(){ for(let attr in this.formdata){ this.formdata[attr] = ('' + this.checkddistributor[attr]); //写入参数 } } },
3、最后上效果图
补充:
vue router-link跳转传值示例
1、router-link
<router-link :to="{name:'deitail',params:{freezemon:'2017-10',owername:'西安'}}" tag="div" > </router-link>
2、routes路由
export default new router({ routes: [ { path: '/', name: 'index', component: index }, { path: '/deitail', name: 'deitail', component: deitail } ] })
3、取值
<h1>{{$route.params.freezemon}}</h1>
4、小结:router-link跳转传值要注意的地方
* to前面要加:
* to后面{中的name值要与路由中的name值一致
* 下面的这种方式是错误的
<router-link to="{path:'/deitail',params:{freezemon:'2017-10',owername:'西安'}}" tag="div" > </router-link>
上一篇: 详解vue 数据传递的方法
下一篇: 网红营销活动如何建立在绩效基础上