Vue 脚手架项目的安装与使用方法 v-text指令 v-html指令 v-pre指令 v-for指令 关于Vue2中的key的作用

脚手架环境

制作WEB前端项目, 从最初的小作坊状态逐渐发展到工程队状态

  • 工程: 像流水线一样, 按照固定的规范来开发项目

脚手架需要安装之后, 才能使用 -- 用来生成标准化的项目包

环境要求:

  • node版本: 12~16, 检查命令: node -v

  • npm: 包管理工具要求中国镜像
  • 查看当前镜像: npm get registry 

  • 全局安装 vue的脚手架工具
  • npm i -g @vue/cli 

  • 安装后使用 vue -V 或 vue --version 来查看版本

 

生成 Vue 项目包

安装脚手架软件后, 目的是为了生成项目包

注意事项:

1. 要生成项目包的目录下, 不允许存在 vue.js 文件 

2. 项目包所在目录中, 不允许存在中文和特殊字符

执行安装命令: vue create 包名

  • 在你希望创建项目包的目录下, 执行
  • 包名: 不允许大写字母, 用- 间隔多个单词 , 例如 vue-pro

 

选择 

  • 选择版本 2

 

  • 后续的所有选项, 直接按回车, 自动采用默认项即可

 

 

 

 

  • 成功生成

项目包的使用方式

脚手架生成的项目包十分完善

自带服务器

在项目包vue-pro 目录下, 打开cmd命令行工具, 运行启动服务器命令

npm run serve

ip 和 端口号 都不一定, 要看你自己电脑

访问服务器: 在浏览器地址栏输入 命令行中的网址, 能查看即可

 

项目包非常专业, 必须用单独的vscode窗口来开启

 

这样就算完成了

v-text指令 v-html指令 v-pre指令

指令: vue提供的一些属性

v-html: 快速设置 innerHTML 属性的值, 被解析成HTML

v-text: 快速设置 innerText 属性的值, 纯文本展示

v-pre: 不解析vue语法

<template>
  <div>
    <!-- v-html: 快速设置 innerHTML 属性的值, 被解析成HTML -->
    <p v-html="words"></p>
    <!-- v-text: 快速设置 innerText 属性的值, 纯文本展示 -->
    <p v-text="words"></p>
    <!-- v-pre: 不解析vue语法 -->
    <div v-pre>{
   
   { 8 + 8 }}</div>
  </div>
</template>

<script>
  export default {
    data() {
      return {
        words: '<h1>Hello World!</h1>'
      }
    },
  }
</script>

<style lang="scss" scoped>

</style>

v-for指令

核心操作: 数组数据 转 HTML 代码

v-for作者借鉴了 JS的 for...in 遍历语法, 融入到了HTML中

JS中: for(const x in names){}

v-for: 自动遍历数组, 生成元素

<ul>
    <li v-for="x in names">{
   
   { x }}</li>
</ul>

for..of 语法同效果, 无差异

在vue中 of 和 in 没有区别, 选你喜欢的

   <button v-for="bin of names">{
   
   { bin }}</button>

 下标语法

(值, 序号) in/of 数组

注意: in/of 左右的空格是必须的

<button v-for="(x, i) in names">{
   
   {i}} - {
   
   {x}}</button>

 支持遍历数字

<button v-for="n in 10">{
   
   { n }}</button>
<button v-for="n in 10">{
   
   { n*5 }}</button>

key

 结论

  • key在Vue是DOM对象的标识
  • 进行列表展示时,默认key是index;
  • 如果数据只做展示使用,使用index作为key是没有任何问题的;
  • 如果使用index作为key,而后续操作会破坏顺序,一定会带来效率问题,严重时会渲染出错误的DOM

key: 是唯一标识, 提高数组元素增删时的重复渲染效率

<ul>
    <li v-for="(x, i) in names" :key="i">{
   
   { x }}</li> 
</ul>

为了避免key重复, 用 序号做标识更好一点

推荐使用数据的唯一标识作为key,比如id,身份证号,手机号等等,通常这些数据由后端提供

后续操作不破坏原来数据顺序的话,使用index作为key也没有任何问题

猜你喜欢

转载自blog.csdn.net/m0_67212141/article/details/128410635