vue学习1(各种基础的指令)

一、学习vue需要的开始准备:

1.准备引入vue要引入的vue的js文件

可以去官网下载:https://cn.vuejs.org/v2/guide/installation.html

也可以在线引入:

<script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.js"></script>

2.这样就可以进行vue的学习了

下面给出一个helloworld的入门案例

<!doctype html>
<html lang="en">
	<head>
		<meta charset="UTF-8">
		<!--	响应式设计	 -->
		 <meta name="viewport" content="width=device-width, initial-scale=1"/>
		<meta name="Generator" content="EditPlus®">
		<meta name="Author" content="">
		<meta name="Keywords" content="">
		<meta name="Description" content="">
		<title>Document</title>
		<link rel="stylesheet" href="template.css" />
		<script type="text/javascript" src="js/jquery-1.11.2.min.js"></script>
		<script type="text/javascript" src="js/vue.js"></script>
	</head>
	<body id="app">
		<h1>{{message}}</h1>
		<script>
			// 这是我们的Model
			var exampleData = {
				message: 'Hello World!'
			}

			// 创建一个 Vue 实例或 "ViewModel"
			// 它连接 View 与 Model
			new Vue({
				el: '#app',
				data: exampleData
			})
	 </script>
		
		
	</body>
</html>

在vue中htm从js中拿到数据是通过{{ }}两个花括号进行的。

二、一些基础的标签

1.v-model:实现双向数据绑定

用法:在标签上添加v-model=“ 绑定的变量名”

        <body id="app">
		<h1>{{message}}</h1>
		<input type="text" v-model="message"/>
		<script>
			// 这是我们的Model
			var exampleData = {
				message: 'Hello World!'
			}

			// 创建一个 Vue 实例或 "ViewModel"
			// 它连接 View 与 Model
			new Vue({
				el: '#app',
				data: exampleData
			})
	         </script>
	</body>

2.v-if:
    使用方法:v-if="表达式",判断

    <body id="app">
		 <h3>hello   {{name}}</h3>
		<h1 v-if="age>18">{{no}}</h1>
		<h2 v-if="age<=18">{{yes}}</h2>
		
	<script>
			// 这是我们的Model
			var exampleData = {
				yes:"你还是个孩子",
				no:"你不再年轻",
				age:18,
				name:"array"
			}

			// 创建一个 Vue 实例或 "ViewModel"
			// 它连接 View 与 Model
			new Vue({
				el: '#app',
				data: exampleData
			})
	 </script>
</body>

3.v-show:
    使用方法:v-show="表达式"
    感觉和v-if使用很相似如果v-show="true"该标签里面的节点就会被显示出来,否则隐藏

        <body id="app">
		<h3>hello   {{name}}</h3>
		<h1 v-show="age>18">{{no}}</h1>
		<h2 v-show="age<=18">{{yes}}</h2>
		<h3 v-show="true">hahahahahahahahhaha</h3>
		
		<script>
			// 这是我们的Model
			var exampleData = {
				yes:"你还是个孩子",
				no:"你不再年轻",
				age:18,
				name:"array"
			}

			new Vue({
				el: '#app',
				data: exampleData
			})
	        </script>
	</body>

4.v-else:
    可以用v-else指令为v-if或v-show添加一个“else块”。v-else元素必须立即跟在v-if或v-show元素的后面——否则它不能被识别。

        <body id="app">
		<h3>hello</h3>
		<h3 v-show="name.indexOf('obj')!=-1">   {{name}}</h3>
		<h3 v-else>{{nickname}}</h3>

		<h1 v-if="age>18">{{no}}</h1>
		<h2 v-else>{{yes}}</h2>
		
		<script>
			// 这是我们的Model
			var exampleData = {
				yes:"你还是个孩子",
				no:"你不再年轻",
				age:18,
				name:"object",
				nickname:"那个"
			}

			// 创建一个 Vue 实例或 "ViewModel"
			// 它连接 View 与 Model
			new Vue({
				el: '#app',
				data: exampleData
			})
	        </script>
	</body>

5.v-for
    就是一个循环的作用persons是在js里面定义的数组,person是遍历的每一个变量名

        <body id="app">
		<table class="table">
			<thead>
			<tr>
				<th>学号</th>
				<th>姓名</th>
				<th>性别</th>
				<th>籍贯</th>
			</tr>
			</thead>
			<tbody>
			<tr v-for="person in persons">
				<td>{{ person.id }}</td>
				<td>{{ person.name }} </td>
				<td>{{ person.sex }}</td>
				<td>{{ person.ads }}</td>
			</tr>
			</tbody>
		</table> 
			
		<script>
			// 这是我们的Model
			var exampleData = {
				persons:[
				{
				id:'2015132031',
				name:'array',
				sex:'女',
				ads:'四川'
				},
				{
				id:'2015132032',
				name:'李二狗',
				sex:'女',
				ads:'黑龙江'
				},
				{
				id:'2015132033',
				name:'object',
				sex:'男',
				ads:'广东'
				},
				{
				id:'2015132034',
				name:'张三',
				sex:'女',
				ads:'河南'
				}
				]
			}

			// 创建一个 Vue 实例或 "ViewModel"
			// 它连接 View 与 Model
			new Vue({
				el: '#app',
				data: exampleData
			})
	 </script>

6.v-bind:用来绑定属性
    用法:v-bind:属性="",例如:       v-bind:class="sp1",或者是其他的属性 v-bind:href=""
        可以简写成:  :属性=“”,例如:  :class="sp1",  或者           :href=""
        对于这种大括号的在属性上进行绑定是最好不用的有的标签就不支持所以就最好使用bind进行绑定。

        <body>
		<div id="app" >
			<a v-bind:href="url">链接<a>
			<img v-bind:src="imgUrl">
			<h3 class="{{claName}}">对与这种大括号的在属性上进行绑定是最好不用的有的标签就不支持
				所以就最好使用bind进行绑定。
			</h3>
			<a :href ="url">链接<a>
			<img :src="imgUrl">
		</div>
		<script>
			var app =new Vue({
				el :' #app ',
				data: {
					url:'https://www.github.com',
					imgUrl:'1.png',
					claName:'bg'

				}
			})
		</script>
     </body>


   7.v-once:一次绑定 

用法直接在html元素上添加v-once即可

 v-once这个指令不需要任何表达式,它的作用就是定义它的元素或组件只会渲染一次,包括元素或者组件的所有字节点。首次渲染后,不再随着数据的改变而重新渲染。也就是说使用v-once,那么该块都将被视为静态内容。

 8.v-on:是一个事件的监听
   用法:v-on:click="函数名"
   另一种写法:@click="函数名"

<body id="app">
		<h3 >hello   {{name}}</h3>
		<h3 id="ha" v-once> {{haha}}</h3>
		<button  v-on:click="add">加1</button>
		<h2 v-once>{{count}}</h2>
		
		<script>
			// 这是我们的Model
			var exampleData = {
				name:"array"
			}


			// 创建一个 Vue 实例或 "ViewModel"
			// 它连接 View 与 Model
			var vue = new Vue({
				el: '#app',
				data:{
					exampleData,
					haha:'haah',
					count:10

				},
				methods:{
					add:function(){
						this.count++;

						console.log(this.count);
					
					}
				}
				
			})
		
		</script>
		
	</body>

三、vue的一些属性

1.methods:

这里是写一些普通的方法

写法:

var vue = new Vue({
	el: '#app',
	data:{
	    exampleData,
	    haha:'haah',
	    count:10

	    },
	     methods:{
		add:function(){
		    this.count++;
                    console.log(this.count);
					
		}
	    }
				
})			

2.computed:

与methods属性相比computed的一个特性就是他的结果是不会被再次刷新的,只要访问的数据不发生改变,这个属性就不会刷新
这样就减少了每次浏览器刷新computed属性刷新所带来的开销

var vue = new Vue({
	el: '#app',
	data: exampleData,
	    computed:{
	    Fnreverse:function(){
		return this.name.split('').reverse().join('');
					
	    },
	    now: function () {
		return Date.now()
	     }
				
	    }
					
})

3.computed下的getter和setter

var vue = new Vue({
                el: '#app',
                data: exampleData,
                computed:{
                    fullName: {
                        // getter 函数
                        get: function () {
                          
                          return this.firstName + ' ' + this.lastName
                        },
                        // setter 函数
                        set: function (newValue) {
                          var names = newValue.split(' ');
                          this.firstName = names[0];
                          this.lastName = names[names.length - 1];
                          console.log(this.lastName);
                        }
                     }
                
                }
                    
            })
            vue.fullName = "he hua";


在设置vue.fullName = "he hua";或调用里面的set函数,控制台将会打印出hua

4.watch:在vue下的watch属性虽然很多时候都比不上computed属性来得好用但有些特定场景也是需要用到
 比如我们需要时刻监听某个数据的变化,当这个数据发生变化时我们要做出一些操作
 它的用法和computed差不多

深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据中的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络中用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值