Vue 学习

vue 核心语法

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Vue 核心语法测试</title>
</head>

<body>
    <div id="app">
        <h1>{{title}}</h1>
        <p>{{content}}</p>
        <p>{{output()}}</p>
        <p>{{output()}}</p>
        <p>{{outputContent}}</p>
        <p>{{outputContent}}</p>
        <!-- 指令表达式 -->
        <!-- 渲染指令 -->
        <p v-text="htmlContent"></p>
        <p v-html="htmlContent"></p>
        <p v-show=bool>v-show test</p>
        <!-- v-if -->
        <!-- v-for -->
        <!-- 属性指令 -->
        <p v-bind:title="title">属性指令v-bind测试</p>
        <p :title="title">属性指令测试简写</p>
        <!-- 事件指令 -->
        <button v-on:click="output">事件指令v-on测试</button>
        <button @click="output">事件指令简写测试</button>
        <!-- 表单指令v-model: 实现数据双向绑定 -->
        <!-- 使用 v-model 杜绝了 DOM-XSS -->
        <input type="text" v-model=inputV>
        <p v-text="inputV"></p>
    </div>
    <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
    <script>
        const vm = new Vue({
            el: "#app",
            data() {
                return {
                    title: "标题'\"><u>sabercoco</u>",
                    content: "内容",
                    // htmlContent: "This is a <script>alert(1);" => 不弹窗
                    // htmlContent: "This is a <img src=1 οnerrοr=alert(1)>" => 弹窗
                    htmlContent: "This is a <img src=1 οnerrοr=alert(/xss/)>",
                    bool: true,
                    inputV: "默认内容"
                }
            },
            // methods 属性
            methods: {
                output() {
                    console.log("output() 执行了")
                    return "标题:" + this.title + " --- " + "内容:" + this.content
                }
            },
            // computed 属性:具有缓存性
            computed: {
                outputContent() {
                    console.log("outputContent 执行了")
                    return "标题:" + this.title + " --- " + "内容:" + this.content
                }
            },
            // 侦听器
            watch: {
                // 监听 title
                title(newV, oldV) {
                    console.log("newV: " + newV + " --- " + "oldV: " + oldV)
                }
            }
        })
    </script>
</body>
</html>

使用 vue 创建一个项目

检查是否已经安装了 npm 和 node

npm --version
node --version

使用 npm 安装 vue

npm install -g @vue/cli

检查 vue 工具是否安装成功

vue --version

使用 vue 工具创建一个名为 vue-demo-project 的项目

  • 这是命令行的创建方式
    vue create vue-demo-project
  • 这是 ui 的创建方式
    vue ui

通过 vue 脚手架创建的项目结构分析

创建项目

vue create vue-demo-project
在这里插入图片描述
选择 [Vue 2],然后回车,等待项目创建完毕。

项目结构图

在这里插入图片描述

src目录和dist目录

src目录是开发者编写代码的地方,代码编写完毕后进入项目根目录执行npm run build进行代码打包,将会得到一个dist目录,这个目录就是项目上线所使用的目录,dist目录如下,
在这里插入图片描述

public目录

在这里插入图片描述
public目录中的内容不参与编译。

模拟将dist上线

进入项目根目录执行npm install serve -g安装 serve 工具,安装完毕后执行serve dist,如下,
在这里插入图片描述
访问http://localhost:3000,如下,
在这里插入图片描述
如果直接使用源码进行上线呢?来到项目根目录执行npm run serve,如下,
在这里插入图片描述
访问http://localhost:8081/,如下,
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/884496.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Vue项目之Element-UI(Breadcrumb)动态面包屑效果 el-breadcrumb

效果预览 需要导航的页面Vue.js 最笨的方法就是在每个需要面包屑的页面中固定写好 <template><div class="example-container"><el-breadcrumb separator="/"

利用多模态输入的自我中心运动跟踪与理解框架:EgoLM

随着增强现实(AR)和虚拟现实(VR)技术的发展,对自我中心(第一人称视角)运动的精确跟踪和理解变得越来越重要。传统的单一模态方法在处理复杂场景时存在诸多局限性。为了解决这些问题,研究者们提出了一种基于多模态输入的自我中心运动跟踪与理解框架——EgoLM。本文将详细…

物流货运托运发货单二联三联打印软件定制 佳易王物流单管理系统操作教程

一、前言 物流货运托运发货单二联三联打印软件定制 佳易王物流单管理系统操作教程 1、软件为绿色免安装版&#xff0c;解压即可使用&#xff0c;已经内置数据库&#xff0c;不需再安装。 2、软件下载可以到本文章最后点击官网卡片下。 二、软件程序教程 1、如图&#xff0c;…

并发面试合集

1.创建线程的方式 区分线程和线程体的概念&#xff0c;线程体通俗点说就是任务。创建线程体的方式&#xff1a;像实现Runnable、Callable接口、继承Thread类、创建线程池等等&#xff0c;这些方式并没有真正创建出线程&#xff0c;严格来说&#xff0c;Java就只有一种方式可以…

Pygame中Sprite实现逃亡游戏4

在《Pygame中Sprite实现逃亡游戏3》中实现了玩家跳跃飞火的效果&#xff0c;接下来通过精灵类的碰撞检测来判断飞火是否击中玩家、飞火是否击中飞龙以及飞龙是否抓住玩家。 1 飞火是否击中玩家的判断 判断飞火是否击中玩家的代码如图1所示。 图1 判断飞火是否击中玩家的代码 …

【07】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-Swiper轮播组件与样式结构重用

序言&#xff1a; 本文详细讲解了关于我们在页面上经常看到的轮播图在鸿蒙开发中如何用Swiper实现&#xff0c;介绍了Swiper的基本用法与属性&#xff0c;及如何面对大段的重复代码进行封装和重用&#xff08;Extend、Styles、Builder&#xff09;&#xff0c;使代码更加简洁易…

Miniforge详细安装教程(macOs和Windows)

(注&#xff1a;主要是解决商业应用anaconda收费问题&#xff0c;这是轻量级的代替&#xff0c;个人完全可以使用anaconda和miniconda) Miniforge 是一个轻量级的包管理器&#xff0c;类似于 Anaconda 和 Miniconda。它主要用于安装基于 conda 的 Python 环境&#xff0c;专注于…

9.26 Buu俩题解

[CISCN2019 华东北赛区]Web2 看wp写完之后写的 知识点 存储型XSS与过滤绕过sql注入 题解 好几个页面&#xff0c;存在登录框可以注册&#xff0c;存在管理员页面(admin.php) ->既然存在管理员页面&#xff0c;且直接访问admin.php提示我们 说明存在身份验证&#xff0…

K8S的Pod IP

pod 的ip 一般是提供给pod1与pod2之间的通信&#xff0c;它有两个特点 1. Pod IP会随着Pod实例 的创新创建&#xff08;重启&#xff09;发生变化&#xff1b; 2. Pod IP只在集群内节点可见&#xff0c;外部无法直接访问

椭圆距离计算的简单方法

分析发现找到点到椭圆的最近距离等价于求解一元四次方程。想象一下一个圆和一个椭圆最多相交四次。从这个观点出发,问题转化为找到与椭圆仅相交一次的圆。如果用四次方程表示,其中两个根将在交点处共享,而另外两个根将会是复数。 尽管四次方程的封闭解确实存在,但迭代方法更…

使用Python和OpenCV生成灰阶图像

代码如下&#xff1a; import cv2 import numpy as npimg np.zeros((256, 256), np.uint8)for i in range(0,16):for j in range(0,16):img[i*16:(i1)*16][j*16:(j1)*16]i*16jcv2.imwrite(result.jpg, img) 效果如下&#xff1a;

Power Automate 设置流Owner不生效的bug

在查找某个功能没生效时&#xff0c;定位到是一个Power automate的流停了&#xff0c;查看原因是因为创建流的owner被disable了 但是当把流的owner更新为可用的用户时&#xff0c;流依旧没被触发&#xff0c;触发的条件很简单&#xff0c;某个表的记录创建时&#xff0c;因为是…

操作系统与进程

1.操作系统 操作系统是计算机中的一个重要软件&#xff0c;它是一个专门进行管理的软件。操作系统可以通过驱动程序来间接管理外部硬件&#xff0c;也可以为计算机中的程序提供一个稳定的运行环境&#xff0c;从而来方便管理各种程序的运行&#xff0c;让程序之间的运行互不影…

传知代码-基于图神经网络的知识追踪方法(论文复现)

代码以及视频讲解 本文所涉及所有资源均在传知代码平台可获取 1.论文概述 论文链接提出了一种基于图神经网络的知识追踪方法&#xff0c;称为基于图的知识追踪&#xff08;GKT&#xff09;。将知识结构构建为图&#xff0c;其中节点对应于概念&#xff0c;边对应于它们之间的…

【JavaEE】——单例模式引起的多线程安全问题:“饿汉/懒汉”模式,及解决思路和方法(面试高频)

阿华代码&#xff0c;不是逆风&#xff0c;就是我疯&#xff0c;你们的点赞收藏是我前进最大的动力&#xff01;&#xff01;希望本文内容能够帮助到你&#xff01; 目录 一&#xff1a;单例模式&#xff08;singleton&#xff09; 1&#xff1a;概念 二&#xff1a;“饿汉模…

Enhancing Trust in LLMs: Algorithms for Comparing and Interpreting LLMs

文章目录 题目摘要引言透明度的必要性对信任的追求困惑度测量自然语言处理(NLP)评估指标零投学习绩效少量学习性能迁移学习对抗测试公平和偏见稳健性评估LLMMaps基准测试和排行榜分层分析布鲁姆分类法的可视化幻觉评分知识分层策略利用机器学习模型进行层级生成注意力可视化LLM…

css五种定位总结

在 CSS 中&#xff0c;定位&#xff08;Positioning&#xff09;主要有五种模式&#xff0c;每种模式的行为和特点不同&#xff0c;以下是 static、relative、absolute、fixed 和 sticky 五种定位方式的对比总结&#xff1a; 1. static&#xff08;默认定位&#xff09; 特性…

阿里云函数计算 x NVIDIA 加速企业 AI 应用落地

作者&#xff1a;付宇轩 前言 阿里云函数计算&#xff08;Function Compute, FC&#xff09;是一种无服务器&#xff08;Serverless&#xff09;计算服务&#xff0c;允许用户在无需管理底层基础设施的情况下&#xff0c;直接运行代码。与传统的计算架构相比&#xff0c;函数…

【2023工业3D异常检测文献】PointCore: 基于局部-全局特征的高效无监督点云异常检测器

PointCore: Efficient Unsupervised Point Cloud Anomaly Detector Using Local-Global Features 1、Background 当前的点云异常检测器可以分为两类&#xff1a; &#xff08;1&#xff09;基于重建的方法&#xff0c;通过自动编码器重建输入点云数据&#xff0c;并通过比较原…

07-阿里云镜像仓库

07-阿里云镜像仓库 注册阿里云 先注册一个阿里云账号&#xff1a;https://www.aliyun.com/ 进入容器镜像服务控制台 工作台》容器》容器服务》容器镜像服务 实例列表》个人实例 仓库管理》镜像仓库》命名空间》创建命名空间 仓库管理》镜像仓库》镜像仓库》创建镜像仓库 使…