30天学会vue.js?|vue.js 3 移动应用开发实战 阅读笔记

news2024/12/27 13:55:48

最近又在折腾vuejs, 计划用30天的时间来掌握这个前端语言。

大概用了一周时间看完这本书。

IMG_20230602_16560301

这本书需要有编程基础的同学阅读。如果从零开始学前端的话,个人不建议,书本内容跳跃性很大,甚至个人觉得有点凌乱。PS:阅读此书一定要配合书本的源码,因为书中的代码部分只是展示了部分,有些关键部分并没有给出来,如果没有配套的源码,很可能你运行不出来书中效果,或者根本就不能运行。

  • 书中源码运行图

20230601001

书中的的Webpack,VueX,移动端单击事件,在最后应用示例中,没有实际使用。

总结的个人笔记

1 vue2和vue3实例化方式不同:

vue2

import Vue from 'Vue'
import APP from './APP.vue'
 
const vm = new Vue({
	render:h => h(APP)
})
vm.$mount('#app')

vue3

import {createApp} from 'vue'
import APP from './APP.vue'
 
const app = createApp(APP)
app.mount('#app')

不使用脚手架vue-cli安装vue

<html>

<head>
    <title>TO DO SPA</title>
    <script src='https://unpkg.com/vue@3.0.5/dist/vue.global.js'></script>

</head>

<body>
    <div id="app">
        <h3>SPA TODO Web system</h3>
    </div>
    <script>
        const myapp = {
        }
        const App = Vue.createApp(myapp)
        App.mount("#app");
    </script>
</body>

</html>

启动方式

直接调用httpserver,不需要调用npm。

比如 httpserver -p 8080

这种方式可以启动任何http静态页面

使用脚手架

npm init vue@latest

如何使用别人的项目?

比如别人的项目为demo

  cd demo
  npm install
  npm run dev

vue-cli创建的项目,无法使用httpserver 这种方式启动,需要使用npm run dev

或者npm run build 之后生成的页面才可以使用httpserver访问,生成的静态文件在public文件夹里面

备注:httpserver 是一个http服务器。需要提前npm安装, npm install httpserver

如果npm的node_module文件夹过大,可以修改 npm 缓存路径

npm config set cache "D:\system\nodejs\node_cache"

如果npm run dev命令报错,

可以打开package.json 中的指令:

	"scripts": {                                                
	   "serve": "vue-cli-service serve",                         
	   "build": "vue-cli-service build"  
	   }

那么启动命令就是 npm run serve,而不是npm run dev

目前如果使用脚手架

npm init vue@latest

构建的项目,是使用vite来管理项目的。

这几天学习下来,个人觉着这个前端的工具链实在太过混乱,vue2和vue3的不兼容,然后vue3里面的构建方式也是有不同工具,比如vue-cli有新的,有旧的,也有webpack,也有vite,每个都对对方不兼容,然后如果只剩有更新,那对旧版的兼容也是不够友好。这里尤其要注意的。

使用官方的最新的vite构建好了vue项目。

目录结构

Demo
  index.html
  |--node_module
  |--public
  |--src
    |--main.js
    |--App.vue
  package.json
  vite.config.js

我们编写的代码工作在src文件夹下。

当然一些配置参数需要在vite.config.js文件下的。

main.js 主要是导入一些库,内容如下:

import { createApp } from 'vue'
import App from './Ref.vue'

createApp(App).mount('#app')

然后主要的页面逻辑在App.vue 里面

<script setup>
</script>

<template>
</template>

<style scoped>
</style>

上面是基本的模板,包含3个模块,script标签里面是类似JavaScript的vue代码,style标签是css的样式,template标签是html模块。

比如下面的一个App.vue 文件:

<script>
export default {
name:"App",
  data(){
    return {students:[]}
  },
  methods:{
    student_info(){
      this.$axios.get('http://127.0.0.1:3000/student/').then(res=>{console.log(res.data);
      this.students = res.data;
      console.log(res.config);
      });
    }
  }
}
</script>

<template>
  <div>
  
  <button @click="student_info">student info</button>
  <table>
    <thead>
      <tr>
        <th>id</th>
        <th>name</th>
        <th>age</th>
        <th>score</th>
      </tr>
    </thead>
    <tbody>
      <tr v-for="item in students" :key="item.id">
        <th>{{item.id}}</th>
        <th>{{item.name}}</th>
        <th>{{item.age}}</th>
        <th>{{item.score}}</th>
      </tr>
    </tbody>
  </table>
  </div>
</template>
<style lange="less">
#app{
background-color:yellow;
text-align:center;
color:#2c350;
margin-top:60px;
}
</style>

npm run dev 后得到的效果: (一个基于vue的实时小爬虫工具,这个代码是自己写的,不是书本上的)

爬虫练手页面

如果需要获取本书的配套源码,可以公众号:30天尝试新事情,后台留言:vuejs3移动应用开发实战 获取下载链接。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

黑马Redis视频教程实战篇(五)

目录 一、达人探店 1.1、发布探店笔记 1.2、查看探店笔记 1.3、点赞功能 1.4、点赞排行榜 二、好友关注 2.1、关注和取消关注 2.2、共同关注 2.3、Feed流实现方案 2.4、推送到粉丝收件箱 2.4、实现分页查询收邮箱 一、达人探店 1.1、发布探店笔记 发布探店笔记 探…

自定义组件和样式学习

一、使用组件3步 例如&#xff1a;APP.vue中使用另外两个组件Left.vue,Right.vue &#xff08;3个页面&#xff09; 1.在APP.vue中用import *** from **** 导入Left.vue、Right.vue页面 2.在APP.vue的js中和data同级注册&#xff0c;components{Left,Rirght} 3.注册完后可在APP…

JAVA内存深度分析报告

文章目录 理论部分&#xff1a;1.Heap Memory&#xff08;堆内存&#xff09;2.Non-heap Memory&#xff08;堆外内存&#xff09;3.Direct Memory&#xff08;直接内存&#xff09; 实验部分&#xff1a;1.Platform MXBeans API 监控快照2.MetaSpace 快照:3.Native Memory 快照…

线程池的实现原理

线程池的实现原理 所谓线程池&#xff0c;通俗的理解就是有一个池子&#xff0c;里面存放着已经创建好的线程&#xff0c;当有任务提交给线程池执行时&#xff0c;池子中的某个线程会主动执行该任务。如果池子中的线程数量不够应付数量众多的任务时&#xff0c;则需要自动扩充…

华为OD机试真题B卷 Java 实现【素数之积】,附详细解题思路

一、题目描述 RSA加密算法在网络安全世界中无处不在&#xff0c;它利用了极大整数因数分解的困难度&#xff0c;数据越大&#xff0c;安全系数越高。 给定一个32位正整数&#xff0c;请对其进行因数分解&#xff0c;找出是哪两个素数的乘积。 二、输入描述 一个正整数num …

科普:什么是小米刷机中的FASTBOOT

目录 1. 什么是手机上的FASTBOOT模式&#xff1f;2. 如何进入与退出FASTBOOT模式&#xff1f;2.1 进入方式2.2 退出方式 3. 如何在PC端安装FASTBOOT驱动&#xff1f;4. 怎么开启FASTBOOT命令提示符&#xff1f;5. 目前FASTBOOT命令有哪些类型&#xff1f;6. 常用的FASTBOOT命令…

第五章 堆内存

文章目录 前言一、&#x1f698; 本地方法1、什么是本地方法2、为什么使用 Native Method 二、&#x1f684; 本地方法栈三、&#x1f6a5; 堆内存1、-Xms10m -Xmx10m 设置堆内存的大小2、内存细分3、设置堆空间的大小与OOMjps 查看Java程序进程jstat -gc 进程号 查看堆内存参数…

CMake构建大型C/C++项目:跨平台设计与高级应用

CMake构建大型C/C项目&#xff1a;跨平台设计与高级应用 一、跨平台设计&#xff08;Cross-Platform Design&#xff09;1.1 跨平台设计原理&#xff08;Principles of Cross-Platform Design&#xff09;1.2 跨平台设计1.2.1 CMake的跨平台特性1.2.2 使用CMake进行跨编译1.2.3…

华为OD机试真题B卷 Java 实现【水仙花数】,附详细解题思路

一、题目描述 所谓水仙花数&#xff0c;是指一个n位的正整数&#xff0c;其各位数字的n次方和等于该数本身。 例如153是水仙花数&#xff0c;153是一个3位数&#xff0c;并且153 1^3 5^3 3^3。 二、输入描述 第一行输入一个整数n&#xff0c;表示一个n位的正整数。n在3到…

【计算机组成原理·笔记】系统总线概念

系统总线概念 各部件之间为了通信&#xff0c;单独连线&#xff0c;太复杂&#xff0c;于是诞生了总线的概念 基本概念 是一组能为多个部分分时共享的公共信息传送路线 总线分类 按传送方式 串行&#xff1a;在总线上1位1位的传输和接收并行&#xff1a;多位在总线上传输…

电脑计算机提示msvcp120.dll丢失该怎么修复

首先&#xff0c;让我们了解一下msvcp120.dll是什么&#xff0c;以及它的作用。msvcp120.dll是一个系统文件。它的作用是提供微软Visual C运行库的函数&#xff0c;以便应用程序可以使用这些函数来实现所需的功能。当您在运行某个程序时&#xff0c;如果发现出现了msvcp120.dll…

【备战秋招】每日一题:4月1日美团春招(二批)第五题:题面+题目思路 + C++/python/js/Go/java带注释

2023大厂笔试模拟练习网站&#xff08;含题解&#xff09; www.codefun2000.com 最近我们一直在将收集到的各种大厂笔试的解题思路还原成题目并制作数据&#xff0c;挂载到我们的OJ上&#xff0c;供大家学习交流&#xff0c;体会笔试难度。现已录入200道互联网大厂模拟练习题&…

面试专题:JAVA虚拟机(1)

关于Java虚拟机&#xff0c;在面试的时候一般会问的大多就是①Java内存区域、②虚拟机垃圾算法、③虚拟机垃圾收集 器、④JVM内存管理、⑤JVM调优、⑥Java类加载机制这些问题了。推荐书籍《深入理解Java虚拟机&#xff1a;JVM高级特性 与最佳实践&#xff08;第二版》、《…

嵌入式Linux驱动开发 04:基于设备树的驱动开发

文章目录 目的基础说明开发准备设备树调整驱动程序与测试总结设备树文件内容 目的 前面文章 《嵌入式Linux驱动开发 03&#xff1a;平台&#xff08;platform&#xff09;总线驱动模型》 引入了资源和驱动分离的概念&#xff0c;这篇文章将在前面基础上更进一步&#xff0c;引…

内网或者没有公网IP,如何轻松通过公网访问?

很多网友都面临一个普遍的问题&#xff0c;就是作为家庭宽带用户没有公网IP&#xff0c;即没有IP v4的公网IP&#xff0c;我们天天盼着有一天IP v6能够普及。IP v4一共有2的32次方个地址&#xff0c;约43亿&#xff0c;中国仅为7000多万个&#xff0c;IP v6一共有2的128次方个地…

MySQL8.0版本在CentOS系统的配置教程

1.安装MySQL MySQL安装完成后&#xff0c;会自动配置为名称叫做&#xff1a;mysqld的服务&#xff0c;可以被systemctl所管理&#xff0c;我们在进行系统的配置时&#xff0c;主要修改root密码和允许root远程登录。 # 通过grep命令&#xff0c;在/var/log/mysqld.log文件中&a…

iOS开发:__weak __strong解决Block嵌套

Block使用会存在循环引用的问题&#xff0c;多个Block嵌套使用的情况更复杂&#xff0c;还会出现对象nil的问题。 为什么会循环引用&#xff1f; 现在iOS开发都是在ARC引用计数管理模式下的&#xff0c;参考另一篇文章《Block底层原理》&#xff0c;我们知道Block访问外部变量…

文心一言 VS 讯飞星火 VS chatgpt (29)-- 算法导论5.2 1题

一、在 HIRE-ASSISTANT 中&#xff0c;假设应聘者以随机顺序出现&#xff0c;你正好雇用一次的概率是多少&#xff1f;正好雇用 n 次的概率是多少? 文心一言&#xff1a; 讯飞星火&#xff1a; 华为盘古&#xff1a; 在HIRE-ASSISTANT中&#xff0c;假设应聘者以随机顺序出现…

仙境传说RO:从零开始编译服务端开发环境搭建安装Pandas-rAthena

仙境传说RO&#xff1a;从零开始编译服务端开发环境搭建安装Pandas-rAthena 大家好&#xff0c;我是艾西今天跟大家分享下仙境传说RO 开发脚本环境搭建。 Pandas是RO的模拟器实际上是开源的一个叫做rAthenna的一个开源项目 准备工具&#xff1a; Git 2.25.0 Setup建议放入D盘…

【消息队列】| 队列的优势介绍及应用场景

目录 &#x1f981; 前言&#x1f981; 那么MQ的优势在哪里&#xff1f;&#x1f981; 应用场景&#x1f981; 最后 &#x1f981; 前言 消息队列&#xff1a;MQ全称Message Queue&#xff08;消息队列&#xff09;&#xff0c;是在消息的传输过程中保存消息的容器。多用于系统…