vue实现将输入数据添加至表格中,通过点击Delete可删除所在行数据。

  <div>

    <form @submit.prevent="addData">

      <h1>添加新员工</h1>

      <label>

        Name:

        <input type="text" v-model="newData.name" required>

      </label>

      <label>

        Email:

        <input type="email" v-model="newData.email" required>

      </label>

      <label>

        Salary:

        <input type="number" v-model="newData.salary" required>

      </label><br>

      <button type="submit">Add</button>

    </form>

    <table>

      <thead>

        <tr>

          <th>Name</th>

          <th>Email</th>

          <th>Salary</th>

          <th>Action</th>

        </tr>

      </thead>

      <tbody>

        <tr v-for="(item, index) in dataList" :key="index">

          <td>{{ item.name }}</td>

          <td>{{ item.email }}</td>

          <td>{{ item.salary }}</td>

          <td><button @click="deleteData(index)">Delete</button></td>

        </tr>

      </tbody>

    </table>

  </div>

</template>

<script>

export default {

  data() {

    return {

      newData: {

        name: '',

        email: '',

        salary: 0,

      },

      dataList: [

        { name: '张三', email: 'zhangsan@example.com', salary: 5000 },

        { name: '李四', email: 'lisi@example.com', salary: 6000 },

        { name: '王五', email: 'wangwu@example.com', salary: 7000 },

      ],

    };

  },

  methods: {

    addData() {

      this.dataList.push(this.newData);

      this.newData = { name: '', email: '', salary: 0 };

    },

    deleteData(index) {

      this.dataList.splice(index, 1);

    },

  },

};

</script>

<style scoped>

table {

  border-collapse: collapse;

  margin: 20px;

}

th, td {

  border: 1px solid #ccc;

  padding: 5px 10px;

}

th {

  background-color: #eee;

}

</style>

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现可点表格数据和Mapbox主图联动,你可以使用Vue的事件绑定和数据双向绑定。 首先,在Vue,你可以使用`<table>`元素和`<tr>`、`<td>`等标签来创建表格。为了使表格数据可点,你可以使用`v-on:click`指令来绑定点事件,并将数据传递给事件处理函数。 例如,你可以在表格的每个数据行上添加`v-on:click`指令,同时将该行数据作为参数传递给一个点事件处理函数。示例代码如下: ```html <table> <tr v-for="(item, index) in tableData" :key="index" v-on:click="handleClick(item)"> <td>{{ item.name }}</td> <td>{{ item.value }}</td> </tr> </table> ``` 在上面的代码,`tableData`是一个数组,包含了表格的所有数据。当用户点表格的某一行数据时,`handleClick`方法会被调用,并且将该行数据作为参数传递给该方法。 接下来,在`handleClick`方法,你可以根据点数据项来更新Mapbox主图的显示内容。为了实现Mapbox主图的联动,你可以使用Vue数据双向绑定,将Mapbox主图的显示内容与Vue组件的数据进行绑定。 例如,你可以在Vue组件的`data`选项定义一个`mapData`对象,用于存储Mapbox主图的显示内容。然后,在`handleClick`方法,你可以根据点数据项来更新`mapData`对象,并触发Vue的响应式更新,从而更新Mapbox主图的显示内容。示例代码如下: ```javascript export default { data() { return { tableData: [...], // 表格数据 mapData: { // Mapbox主图数据 center: [116.38, 39.9], zoom: 12, // ... }, }; }, methods: { handleClick(item) { // 更新mapData对象 this.mapData.center = item.center; this.mapData.zoom = item.zoom; // ... }, }, }; ``` 在上面的代码,`mapData`对象的`center`和`zoom`属性表示Mapbox主图的心点和缩放级别。当用户点表格的某一行数据时,`handleClick`方法会根据该行数据来更新`mapData`对象的`center`和`zoom`属性,从而更新Mapbox主图的显示内容。并且由于`mapData`对象与Vue组件的数据进行了双向绑定,所以Mapbox主图的显示内容也会自动更新。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值