Vue.js:组件的数据data存放

  • 组件是一个单独功能模块的封装:既可以有属于自己的HTML模板,也可以有属性自己的数据data和方法methods。
  • 组件中不能直接访问Vue实例中的data

一丶组件的数据存放

  • Vue组件有自己保存数据的地方:

组件对象中声明一个data属性

这个data属性必须是一个函数

而且这个函数的返回一个对象,对象内部保存着数据
 

  •  组件data必须是函数

如果我们的data不是一个函数,函数不返回一个对象
不同复用处的组件的数据,都会随着一处的更改而全部都改,就没有独立性。


如果组件data使用函数,返回一个对象,对象中装数据
这样的话,每次复用引入该组件时,该组件的数据在都会独立开辟一个空间存储自己的数据,组件间相同数据,互不影响

  • 总结:如果组件的data不是函数返回一个对象的话,该组件在不同处复用,复用的所有组件的数据,都会随着一处的更改而全部都改,就没有独立性

 二、代码

<!--作者:ikunsdc-->
<!--开发时间:2021/02/28 19:53-->

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>

<div id="app">
  <cpn_count></cpn_count>
  <cpn_count></cpn_count>
  <cpn_count></cpn_count>
</div>

<template id="cpn">
  <div>
    <h2>当前计数:{{counter}}</h2>
    <button @click="increment">+</button>
    <button @click="decrement">-</button>
  </div>
</template>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
  //1.注册全局组件
  Vue.component('cpn_count',{
    template:'#cpn',
    data(){
      return{
        counter:0
      }
    },
    methods:{
      increment(){
        this.counter++
      },
      decrement(){
        this.counter--
      }
    }

  })
  const app = new Vue({
    el:"#app",
    data:{

    }
  })
</script>
</body>
</html>

 

三、运行

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Vue.js、MVC和Layui创建一个数据表格页面,你可以按照以下步骤进行操作: 1. 引入Vue.js和Layui的相关资源文件。在HTML文件中添加以下代码: ```html <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/layui@2.5.7/dist/css/layui.css"> <script src="https://cdn.jsdelivr.net/npm/vue@2.6.12/dist/vue.js"></script> <script src="https://cdn.jsdelivr.net/npm/layui@2.5.7/dist/layui.js"></script> ``` 2. 创建一个包含数据表格的Vue实例。在JavaScript文件中添加以下代码: ```javascript new Vue({ el: '#app', data: { tableData: [] // 存放后端返回的数据 }, mounted() { // 发起Ajax请求获取后端数据,并将数据赋值给tableData this.getTableData(); }, methods: { getTableData() { // 使用Ajax请求获取后端数据,这里以示例直接赋值数据为例 this.tableData = [ { id: 1, name: 'John Doe', email: 'john@example.com' }, { id: 2, name: 'Jane Smith', email: 'jane@example.com' }, // 其他数据... ]; } } }); ``` 3. 在HTML文件中创建一个包含数据表格的容器,并使用Layui的表格组件展示数据。在HTML文件中添加以下代码: ```html <div id="app"> <table class="layui-table"> <colgroup> <col width="150"> <col width="200"> <col> </colgroup> <thead> <tr> <th>ID</th> <th>名称</th> <th>邮箱</th> </tr> </thead> <tbody> <tr v-for="item in tableData" :key="item.id"> <td>{{ item.id }}</td> <td>{{ item.name }}</td> <td>{{ item.email }}</td> </tr> </tbody> </table> </div> ``` 以上代码中,通过使用Vue的`v-for`指令将每条数据渲染为表格行。`v-for="item in tableData"`表示遍历`tableData`数组,将每个元素赋值给`item`,然后在表格中显示相应的属性值。 这样,你就可以通过Vue.js、MVC和Layui创建一个包含数据表格的页面。你可以根据需要调整数据源、表格样式以及其他功能和交互的实现。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值