从数据库获取到json数据,前端用vue.js数据绑定

function userinfor() {
	$.get("http://127.0.0.1:8082/lzghcg/user/userShows",
			function(result, state) {
				//这里显示从服务器返回的数据
				new Vue({
					el:'#userinfor',
					data:{//data就是数据,主要绑定的数据
						lists:result
					}
				})
				//这里显示返回的状态
				// alert(state);
				 
		/*dynamicTable(result)*/
	
	})
}

使用vue的时候必须要创建一个vue的对象,

el是主要渲染到哪里去,就是html中css的id意思。

data:就是要渲染的数据,json数据哦

主要用到的是v-text指令

这个指令呢v-后面接的是类似一个方法的东西。官网有介绍。

就到了前台的绑定的数据了

此时候,还要用到一个v-for

vue中循环语句呢

<tbody id ="userinfor">
									<tr v-for="list in lists">
									<td width="30px" align="center"><input type="checkbox"
												name="checkbox" / style="margin: 0px"></td>
									<td v-text="list.username"></td>
									<td v-text="list.memo"></td>
									
									
									</tr>
										<tr>
											<td width="30px" align="center"><input type="checkbox"
												name="checkbox" / style="margin: 0px"></td>
											<td>admin</td>
											<td>123</td>
											<td>3</td>
											<td><span class="redtitle" title="删除议题" οnclick="">编辑</span>
												<span class="redtitle" title="删除议题" οnclick="">删除</span></td>
										</tr>
										<tr>
											<td width="30px" align="center"><input type="checkbox"
												name="checkbox" / style="margin: 0px"></td>
											<td>lee</td>
											<td>1</td>
											<td>3</td>
											<td><span class="redtitle" title="删除议题" οnclick="">编辑</span>
												<span class="redtitle" title="删除议题" οnclick="">删除</span></td>
										</tr>

									</tbody>
红色是关键,但是我这样子 做的时候绑定就没有问题了,估计也会遇到一个问题 ,就是用最简单绑定数据的时候,会出现先加载你的页面才去调用vue.js才去帮你绑定。因为我是通过ajax去获取到数据,绑定的。不能用{{}}这种格式去绑定。只能去用v-text.

下面是个失败的例子

	<!-- <div id="userinfor">
									<ul><li v-for="list in lists">
									
									{{list.username}}
									
									</li></ul>
									
									
									</div> -->

反而页面会出现一个
{{list.username}}
这个东西,过一会才有值出现。

我也不知道再怎么去解决它。最后我介绍我怎么去Java后台处理里面的值,看看 就好哈哈哈哈哈

var newVuedate = null;
function dynamicTable(result) {
	var data = result;//取到一个json数据
	if (data == null) {
		return;
	}
	
	var datavue = [];
	for (var i = 0; i < data.length; i++) {//json类似一个数组,所以通过循环输出里面
 var objproject = {
			"id" : result[i].id,//这个是赋值到一个数组对象里面去,开发的时候就是取到里面的值进行一个逻辑判断,要干嘛干嘛的。这个也加上他的下标
			"username" : result[i].username,/我可以给个例子看看明天吧
			"password" : result[i].password,
			"createdate" : result[i].createdate,
			"dele" : result[i].dele,
			"memo" : result[i].memo
		}
		datavue.push(objproject);
	}
	if (newVuedate == null) {
		newVuedate = new Vue({
			el : '#userinfor',
			data : {
				lists : datavue
			}
		});
	} else {
		newVuedate.lists = datavue
	}

}
这个呢,就是初始化vue的东西,大神告诉我,为啥绑不上去,就是还没有初始化vue呢不知道是不是这样子。

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,下面我将为您提供一个简单的购物车示例,使用Vue.js和Node.js构建。在这个示例中,我们将使用Vue.js来呈现购物车的用户界面,使用Node.js来处理购物车的业务逻辑和数据库交互。 首先,我们将创建一个名为“shopping-cart”的文件夹,并在其中创建另外两个文件夹:client和server。在client文件夹中,我们将使用Vue.js创建一个简单的前端应用程序,而在server文件夹中,我们将使用Node.js创建一个后端服务器来处理购物车相关的逻辑。 **1. 前端部分** 在client文件夹中,我们将创建以下文件文件夹: - **index.html** - 这是我们的主页面,用于呈现购物车的用户界面。 - **app.js** - 这是我们的Vue.js应用程序的主要JavaScript文件,用于管理购物车的状态和交互。 - **assets**文件夹 - 这个文件夹包含一些图像和CSS文件,用于美化我们的用户界面。 下面是index.html的代码: ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Shopping Cart</title> <link rel="stylesheet" href="assets/style.css"> </head> <body> <div id="app"> <h1>Shopping Cart</h1> <ul> <li v-for="(item, index) in cartItems" :key="index"> {{ item.name }} - {{ item.price }} - {{ item.quantity }} <button @click="removeItem(index)">Remove</button> </li> </ul> <p>Total: {{ total }}</p> <hr> <form @submit.prevent="addItem"> <input type="text" v-model="newItem.name" placeholder="Item Name"> <input type="number" v-model="newItem.price" placeholder="Price"> <input type="number" v-model="newItem.quantity" placeholder="Quantity"> <button>Add Item</button> </form> </div> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <script src="app.js"></script> </body> </html> ``` 在这个HTML文件中,我们使用了Vue.js的指令v-for和v-model来呈现购物车中的所有物品,并使用v-on指令来绑定删除和添加物品的事件。我们还定义了一个form元素,用于添加新物品。 下面是app.js的代码: ```javascript var app = new Vue({ el: '#app', data: { cartItems: [], newItem: { name: '', price: '', quantity: '' } }, computed: { total: function() { var sum = 0; for (var i = 0; i < this.cartItems.length; i++) { sum += this.cartItems[i].price * this.cartItems[i].quantity; } return sum; } }, methods: { addItem: function() { this.cartItems.push({ name: this.newItem.name, price: this.newItem.price, quantity: this.newItem.quantity }); this.newItem.name = ''; this.newItem.price = ''; this.newItem.quantity = ''; }, removeItem: function(index) { this.cartItems.splice(index, 1); } } }); ``` 在这个JavaScript文件中,我们使用Vue.js的实例来定义购物车的数据和方法。我们使用cartItems数组来存储购物车中的物品,并使用newItem对象来存储新物品的信息。我们还定义了一个计算属性来计算购物车的总价,并使用addItem和removeItem方法来添加和删除物品。 **2. 后端部分** 在server文件夹中,我们将创建以下文件文件夹: - **package.json** - 这是我们的Node.js应用程序的配置文件,用于管理依赖项和脚本。 - **index.js** - 这是我们的Node.js应用程序的主要JavaScript文件,用于创建服务器并处理购物车相关的逻辑。 - **routes**文件夹 - 这个文件夹包含一些路由文件,用于处理不同的HTTP请求。 下面是package.json的代码: ```json { "name": "shopping-cart", "version": "1.0.0", "description": "A simple shopping cart app using Vue.js and Node.js", "main": "index.js", "dependencies": { "body-parser": "^1.19.0", "express": "^4.17.1" }, "scripts": { "start": "node index.js" } } ``` 在这个文件中,我们定义了我们的应用程序的名称、版本、描述、依赖项和脚本。我们使用了express和body-parser模块来创建服务器和解析HTTP请求体。 下面是index.js的代码: ```javascript const express = require('express'); const bodyParser = require('body-parser'); const app = express(); const port = 3000; app.use(bodyParser.json()); let cartItems = []; app.get('/cartItems', (req, res) => { res.send(cartItems); }); app.post('/cartItems', (req, res) => { const newItem = req.body; cartItems.push(newItem); res.send('Item added to cart'); }); app.delete('/cartItems/:id', (req, res) => { const id = req.params.id; cartItems.splice(id, 1); res.send('Item removed from cart'); }); app.listen(port, () => { console.log(`Server running on port ${port}`); }); ``` 在这个JavaScript文件中,我们使用了express模块来创建一个HTTP服务器,并使用body-parser模块来解析HTTP请求体。我们定义了一个名为cartItems的数组来存储购物车中的物品,并使用GET、POST和DELETE方法来处理不同的HTTP请求。我们使用GET方法来获取购物车中的物品,使用POST方法来添加新物品,使用DELETE方法来删除物品。 **3. 运行应用程序** 现在我们已经完成了我们的购物车应用程序的前端和后端部分。我们可以使用以下命令来启动我们的应用程序: ``` cd shopping-cart/server npm install npm start ``` 这将启动我们的Node.js服务器,并在端口3000上监听请求。接下来,我们可以使用以下命令来启动我们的Vue.js应用程序: ``` cd shopping-cart/client npm install npm run serve ``` 这将启动我们的Vue.js应用程序,并在端口8080上运行。现在,我们可以在浏览器中访问http://localhost:8080,以查看我们的购物车应用程序的用户界面。 在用户界面中,我们可以添加新物品、删除物品和查看总价。当我们添加或删除物品时,我们的Vue.js应用程序将向我们的Node.js服务器发送HTTP请求,并更新购物车的状态。我们的Node.js服务器将根据HTTP请求的类型和参数来更新cartItems数组,并返回HTTP响应以告知客户端操作是否成功。 以上就是一个简单的购物车示例,使用Vue.js和Node.js构建。您可以根据自己的需求和偏好来扩展和改进这个示例。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值