代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript" src='js/bower_components/vue/dist/vue.js'></script>
		
	</head>
	<body>
		
		<script type="text/javascript">
			var  a=new Vue(
				{
					el:'body',
					data:{
						a:10,
						b:20
					},
					computed:{
						c:
						{
							get:function()
							{
								return this.w;
							},
							set:function(v)
							{
								this.w=v+this.a;
							}
						}
					}
				}
			);
			a.c=666;
			console.log(a.c);
			
		</script>
	</body>
</html>

解释:
vue computed_html
a代表vue computed_vue.js_02
c代表
vue computed_JavaScript_03
结果为什么是这样子的676?
因为a.c=666;其中666赋值给了v,然后在set里面计算,然后再get里面读取输出

效果:

vue computed_javascript_04

代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript" src='js/bower_components/vue/dist/vue.js'></script>
		
	</head>
	<body>
		
		<script type="text/javascript">
			var  a=new Vue(
				{
					el:'body',
					data:{
						a:10,
						b:20
					},
					computed:{
						c:
						{
							get:function()
							{
								return 666;
							},
							set:function(v)
							{
								this.w=v+this.a;
							}
						}
					}
				}
			);
			console.log(a.c);
			
		</script>
	</body>
</html>

解释:

因为没有赋值给v那里,所以set里面用不上,
vue computed_赋值_05

所以直接读取,然后直接输出666

效果:

vue computed_html_06