Vue学习笔记-day01

Vue学习笔记-day01

Vue笔记

  • vue官网:cn.vuejs.org

day01

1.(掌握)vue安装和初步体验vue

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
/*
    // 需要编译器
    new Vue({
   
    template: '<div>{
   { hi }}</div>'
    })

    // 不需要编译器
    new Vue({
   
    render (h) {
   
        return h('div', this.hi)
    }
    })

*/
ES6中: let (定义变量) / const(定义常量)

<div id="app">
    <button @click="add()">添加</button>
    插值表达式: {
   {
   num}}
    双向绑定:v-model
    <input type="text" v-model="msg"/>
</div>

new Vue({
   
    el:"#app",
    data:{
   
        num:0  ,
        msg:"hello vue"
    },
    methods:{
   
        add(){
   
            this.num ++;
        }
    }
});

vue 渲染式框架,数据和视图进行分离.MVVM模式

<!-- vue体验:计数器-->
<body>
		<div id="app">
			
			<input type="text" v-model="msg"/>
			{
  {msg}}
			<br/><hr color="red"/>
			
			当前技术:{
  {num}}
			<button @click="add()">+</button>
			
			<button @click="subtraction()">-</button>
		
		</div>
		<script> new Vue({
     el:"#app", data:{
     msg:"hello vue" ,num:0 }, methods:{
     add(){
     this.num++; }, subtraction(){
     this.num--; } } }) </script>
	</body>

2.(理解)vue的options选项

参考官方API文档:https://cn.vuejs.org/v2/api/#el

<body>
		<div id="app">
			
			<input type="text" v-model="msg"/>
			{
  {msg}}
			<br/><hr color="red"/>
			
			当前技术:{
  {num}}
			<button @click="add()">+</button>
			
			<button @click="subtraction()">-</button>
		
		</div>
		<script> new Vue({
     el:"#app", data:{
     msg:"hello vue" ,num:0 }, methods:{
     add(){
     this.num++; }, subtraction(){
     this.num--; } } }) </script>
	</body>

eldatamethods 表示vue的options。其他的选项参考官方api学习文档

3.(了解)vue生命周期

Vue学习笔记-day01

生命周期:created 页面加载的时候调用,但是没有渲染DOM节点.mounted 页面加载的时候调用。这个时候DOM已经渲染完了。

4.(掌握)Vue-指令

4.1 插值表达式

mustache语法就是双大括号{
{msg}}
,即插值语法;插值表达式里面做一些简单的运算.复杂的运算使用computed计算属性.

<body>
		<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
		<div id="app">
			 {
  {age>18?"成年":"未成年"}}
			 <hr color="red"/>
			 {
  {msg.split("-")}}	
		</div>
		<script> new Vue({
     el:"#app", data:{
     age:23, msg:"hello-vue" }, methods:{
     } }) </script>
	</body>

效果:

Vue学习笔记-day01

需要注意:在插值表达式中不能写js语句。比如{
{var a = 10 }}

4.2 v-once指令

只渲染元素和组件一次;不需要表达式, 直接将指令写在开始标签中即可

<body>
		<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
		<div id="app">
			<button @click="change()">改变msg内容</button>
			{
  {msg}}
			<hr color="red"/>
			<p v-once>{
  {msg}}</p>
		
		</div>
		<script> new Vue({
     el:"#app", data:{
     msg:"hello-vue", num:1 }, methods:{
     change(){
     this.num++; this.msg="hello-vue 的v-once指令"+(this.num); } } }) </script>
	</body>

效果:

Vue学习笔记-day01

4.3 v-html 和v-text指令

渲染文本里面的内容。但是需要注意v-html可以渲染内容里面的js代码,容易造成XSS脚本共计.


<div id="app">
    {
  {url}}
    <hr/>
    <h1 v-html="url"></h1>
</div>

<script> new Vue({
     el:"#app", data:{
     url:"<a href='http://www.baidu.com'>百度</a>" } }) </script>

4.4 v-pre指令

v-pre用于跳过这个元素和它子元素的编译过程,用于显示原本的Mustache语法。跳过大量没有指令的节点会加快编译。

<span v-pre>{
  { this will not be compiled }}</span>

就会直接显示{
{this whill not be compiled}}

4.5 v-cloak

防止{
{}}进行解析闪动。cloak 中文意思表示斗篷.

<style> [v-cloak] {
     display: none; } </style>

<div v-cloak>
  {
  { message }}
</div>

4.6 v-bind 指令*****

v-bind 绑定标签的属性。是标签的属性。可以是绑定 classstyle 等都可以;

v-bind 可以简写为冒号”:”

1 .绑定基本属性
<div id="app">
	<img :src="url" />    
</div>

<script> new Vue({
     el:"#app", data:{
     url:"http://192.168.0.150/fasfasdfafsd.png" } }) </script>
2.绑定class对象语法
  • 对象语法

:class=“{类名:布尔值}” ,有布尔值觉得是否绑定类名.布尔值的数据来源data。

所谓对象语法就是说 :class=“{}”,在json中使用{}表示对象的。

<style> .ative{
     color:red; } </style>
<div id="app">
<p :class="{active:isactive}">
    hello vue
    </p>
    
</div>
<script> new Vue({
     el:"#app", data:{
     isactive:true } }) </script>
3.绑定style

绑定style的对象语法:

:style = “{key(属性名,样式的名字):value(属性值)”

 <div id="app">
        <div v-bind:style="{
      color: redColor, fontSize: font18}">
            文本内容
        </div>
    </div>
    <script src="./vue.js"></script>
    <script> var vm = new Vue({
     el: '#app', data: {
     redColor: 'red', font18: '18px' } }); </script>

xxxx

color 这里没有加单引号, value的值使用单引号。

在vue中key可以不用加单引号,但是value如果不加单引号,vue会把他当着是一个变量来处理.如果加上单引号转成样式的时候是没有单引号的。

.titil{

font-size:50px,

color:red;

}

4.7 v-for指令[循环指令]

循环指令.

  • 遍历数组.
<div id="app">
    <ul>
        <li v-for="(item,index) in boos">
        	{
  {index}}------{
  {item}}
        </li>
    </ul>
</div>
<script> new Vue({
     el:"#app", data:{
     boos:["Java","C#","python"] } }) </script>
  • 遍历对象。
<div id="app">
    
    
</div>
<script> new Vue({
     el:"#app", data:{
     } }) </script>

5.(掌握)计算属性

计算属性:computed,计算属性作为vue实例选项options之一。

<div id="app">
    <h2>
        {
  {fullName}}
    </h2>
</div>
<style> new Vue({
     el:'#app', data:{
     firstName:"hello", lastName:'vuejs' }, computed:{
     fullName(){
     return this.firstName+' '+this.lastName; } } }) </style>


  • 插值表达式里面还可以写方法
<div id='app'>
    {
   {getFullName()}}
</div>

<script> new Vue({
      el:"#app", methods:{
      getFullName(){
      return "hello"+" "+"vuejs"; } } }) </script>
  • 计算属性里面的方法必须要有返回值
<div id='app'>
    
</div>
<script> new Vue({
     el:'#app', }) </script>
  • ES6语法之循环
<div id='app'>
    {
   {totalPrice}}
</div>
<script> new Vue({
      el:'#app', data:{
      books:[ {
     id:110,name:"unix编程艺术",price:119}, {
     id:111,name:"代码大全",price:105}, {
     id:112,name:"深入理解计算机原理",price:98} ] }, computed:{
      totalPrice(){
      let totalprice=0; for(let i in this.books){
      totalprice +=this.books[i].price } return totalprice; } } }) /* //循环方式一: for(let i in this.books){ this.books[i] } //循环方式二: for(let book of this.books){ //book表示里面的一个对象 } */ </script>

day02

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/100735.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • VSCode删除整行快捷键[通俗易懂]

    VSCode删除整行快捷键[通俗易懂]ctrl+shift+k

  • 10个常用的3D建模软件,作为3D建模的软件东西很杂很碎,还需多练习才最重要「建议收藏」

    10个常用的3D建模软件,作为3D建模的软件东西很杂很碎,还需多练习才最重要「建议收藏」很多人都会好奇,电脑是怎么将手绘的2D图形变成3D的实际物品的?究竟是什么神奇魔法能够瞬间将我们的想法变成现实的呢?今天来和大家介绍下工业设计师经常会用到的10个3D建模软件。SolidworksSolidworks是工业设计师经常会用到的一款建模软件。SolidWorks是一款在MircosoftWindows上才能运行的建模计算机辅助设计和计算机辅助工程的计算机程序,由DassaultSystemes开发和发布。这是一款很常见的很普遍的工业设计建模软件,如果你以后有机会在国外找工

  • c语言怎么使用strstr函数,c语言中strstr函数的用法是什么?[通俗易懂]

    c语言怎么使用strstr函数,c语言中strstr函数的用法是什么?[通俗易懂]c语言中“strstr(str1,str2)”函数用于判断字符串“str2”是否是“str1”的子串;如果是,则该函数返回“str2”在“str1”中首次出现的地址;否则返回NULL。其语法为“*strstr(str1,str2)”。strstr(str1,str2)函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回NULL。C语…

    2022年10月15日
  • Telerik的RadControls控件(二)

    Telerik的RadControls控件(二)继上篇我们学习了RadWindow控件的用法之后,本篇我们将学习在项目中更加方便开发人员的常用控件RadAjax控件.  RadAjax是面向ASP.NET应用程序无编码AJAX使能化的第一个框架。这个专利Click-and-Go™技术可以让你不需要对你应用程序做任何修改(摆放Callback面板,设置触发器等)。最棒的是,你根本不需要写一行的JavaScript或s

  • C语言小游戏之扫雷完整版

    C语言小游戏之扫雷完整版C语言小游戏之扫雷一.游戏介绍二.游戏步骤及实现的功能1.初始化雷盘2.打印雷盘3.随机布置雷4.玩家排雷5.防止玩家第一次被炸死6.统计所选位置周围八个位置中雷的个数7.拓展已选位置周围的区域8.标记雷及取消标记一.游戏介绍看到这张图片,相信很多小伙伴都非常熟悉,很多小伙伴都玩过扫雷这个小游戏,扫雷是一款益智类游戏,在放松娱乐的同时可以锻炼各位小伙伴的智商。游戏规则:如上图,玩家需要在不被炸死的前提下找出图中雷的位置,若能找出所有雷,则游戏胜利,若不幸踩到雷则被炸死。注:先介绍,后文会有完整代码

  • java图书销售系统,基于jsp的图书销售管理系统-JavaEE实现图书销售管理系统 – java项目源码…[通俗易懂]

    java图书销售系统,基于jsp的图书销售管理系统-JavaEE实现图书销售管理系统 – java项目源码…[通俗易懂]基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的图书销售管理系统,该项目可用各类java课程设计大作业中,图书销售管理系统的系统架构分为前后台两部分,最终实现在线上进行图书销售管理系统各项功能,实现了诸如用户管理,登录注册,权限管理等功能,并实现对各类图书销售管理系统相关的实体进行管理。该图书销售管理系统为一个采用mvc设计模式进行开发B/S架构项…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号