vue.js 的起步

Vue.js 起步指南 Vue.js 是由尤雨溪(Evan You)于2014年创建的。它遵循MVVM(Model-View-ViewModel)架构模式,允许开发者将数据绑定到视图,从而实现数据与视图的同步更新。Vue.js 的核心库只关注视图层,易于上手,同时可以与第三方库或已有项目集成。本文为您提供了一个Vue.js的入门指南,介绍了Vue.js的基本概念、环境准备、实战项目等内容。希望您能通过本文快速掌握Vue.js,并在实际项目中应用它。祝您学习愉快! 阅读详情

介绍

vue.js 是一个客户端js库,可以用来开发单页应用。为了一个项目的选型,我前前后后的看了angular、react、vuejs ,对前两者是佩服,对后者是爱。因为它简洁干净利索,并且还有高大上的web components实现。即使文档不多,我也愿意选择它。接下来,我们首先建立一个开始的项目,并且撸一遍开发过程中涉及到的概念和组件。

vue.js

稍微像样一点的vuejs的开发过程几乎总是搭配webpack、babel一起的,喜欢从头hack的人,我告诉你配置是极为繁琐的,幸好vue.js 提供了一个工具,叫做vue-cli 。可用于快速搭建单页应用起步代码。只需一分钟即可启动常用的开发特性:

  1. 可用的脚手架代码。

  2. 热重载。组件代码更新后自动重新加载

  3. 静态代码检查。

  4. ES6语言特性

工具准备

我们需要使用vue-cli来创建一个脚手架项目。

安装 vue-cli

$ npm install -g vue-cli

确认node版本

我的版本是

$ node -v

v5.0.0

$ npm -v

3.10.6


很多问题如果出现,可能和版本有关,建议和我一致 。

创建新项目

执行:

$ vue init webpack my-project

第二个参数webpack,指明创建一个基于 “webpack” 模板的vuejs项目。此模板会创建一个webpack的脚手架代码。

然而,webpack是啥?它本身是一个打包工具,可以把js、css、image打包成一个或者多个js文件,并且可以支持各种loader作为插件对不同类型的文件做转换处理。实际上webpack就是通过插件vue-loader在加载vue类型的文件时做格式转换,把vue类型文件翻译为浏览器可以识别的js文件。

中国用户注意:vue init命令使用了npm, npm的仓库经常缓慢或者被阻断,可以使用国内镜像,只要编辑 ~/.npmrc 加入下面内容:

registry = https://registry.npm.taobao.org

这个的做法可以快得多。

当前可以使用的模板有:

webpack - 通过webpack和vue-loader插件,可以调用babel把.vue文件编译为客户端可以识别的js文件。默认还可以提供热加载、代码检查、测试。

webpack-simple - 最简单的webpack和vue-loader插件。

browserify - 通过Browserify + vueify 的组合,可以调用babel把.vue文件编译为客户端可以识别的js文件。默认还可以提供热加载、代码检查、测试。

browserify-simple - 最简单的Browserify + vueify 插件。


理论上webpack和browserify的功能类似,都可以做打包工具。但是webpack就是那个文档特少,但是大家都争着使用的热门工具。所以,我们就不管那么多,先使用webpack啦。

安装依赖,走你

$ cd my-project

$ npm install

$ npm run dev


到http://localhost:8080查看效果。

查看vue文件

vue文件是三位一体的。就是说css、html、js都在一个文件内,使用标签做出分割。为了更好的查看结构,建议首先安装对应编辑器的高光插件。

安装语法高光

我习惯使用的编辑器是sublime text,安装插件就可以识别所有扩展名为.vue的vuejs组件代码,给予高光显示,便于代码的阅读和编写。这个插件叫做 vue-syntax-highlight,是vuejs官方提供的。它位于github.com。只要把它克隆到你的Sublime包目录内。在我的电脑上,Sublime包目录是/Users/lcj/Library/Application Support/Sublime Text 3/Packages ,所以安装的过程就是

cd /Users/lcj/Library/Application\ Support/Sublime\ Text\ 3/Packages

git clone https://github.com/vuejs/vue-syntax-highlight


然后重新启动即可。之后阅读代码,所有的扩展名为.vue文件都会有相应的高光显示。

查看vue

起步代码中有一个组件代码,在src/hello.vue内。查看:

<template>

    <div class="hello">

      <h1>{{ msg }}</h1>

    </div>

  </template>

 

 

  <script>

  export default {

    data () {

      return {

        msg: 'Hello World!'

      }

    }

  }

  </script>

 

 

  <style scoped>

  h1 {

    color: #42b983;

  }

  </style>


文件内分为三个部分, <template>标签包围内的是html代码; <script>内包围的是js代码,并且可以使用ES6的语法。 <style>内的则是css代码。使用这个组件的代码在app.vue内。只要首先在脚本内声明标签

import Hello from './components/Hello'

export default {

  components: {

    Hello

  }

}


随后在html内使用标签即可

<hello></hello>

非常大的一个亮点!一个vue文件,内部js、css、html就都齐了,可以作为一个完整的、自包含的组件了。非常有趣的、我个人极为欣赏的web components就在此处了。

vue文件内的语法,当然不是浏览器所可以支持的,浏览器不认识它!魔术在于webpack+vue-loader+babel 。webpack加载vue文件首先调用vue-loader,vue-loader会调用babel转换ES6代码为ES5代码,把css和html作为模块也转换为客户端js代码。这些js代码浏览器就可以识别了。

另外,我们看看热加载。把hello组件的msg值改改。然后保存。浏览器会自动刷新的。这就是热加载了。对于频繁修改调试的程序员,有了热加载,得轻松不少。

安装chrome开发工具

我习惯使用的浏览器是chrome,可以安装vue的开发工具到chrome插件内。在chrome市场内查询vue-developertools 。有了它,可以在chrome console内看到更加友好的vue错误提示。

回归日常

我们所有的编辑修改一旦完成需要更新网站时,最终需要把所有的vue,ES6代码等编译出来到ES5的js文件。现在可以构建这些webpack代码:

npm run build

此命令会把我们已经有的开发成果,编译到dist目录下,就是说编译成前端可以直接使用的html、js、css。

有了它们,我就可以使用一个http 静态服务器,在dist目录内执行:

cd dist

npm install http-server -g

http-server


然后,到http://localhost:8080查看效果。和运行npm run dev看到的一模一样。

更多

vue还有两个插件,对开发者很有价值

加强版 ,访问服务器

npm install vue-resource --save


安装路由

npm install vue-router --save

细节展开

我们走马观花的看了webpack、vue-loader、babel 、vue组件,未来需要一些篇幅去详细说明它们。

作者:伯乐在线专栏作者 - 1000copy


比利时风电光伏负荷一体化数据集解析与应用 本文深度解析了由比利时输电系统运营商Elia集团提供的风电光伏负荷一体化数据集。该数据集整合了负荷、风电与光伏出力数据,并包含多时间尺度的官方预测值,时间跨度长达四年,是研究能源转型、构建电力预测模型及分析电网运行的宝贵资源。文章详细介绍了数据价值、字段含义、实战应用场景(如预测模型基准测试、风光互补性分析)以及数据处理指南,为相关领域的研究与开发提供了高质量数据基础和实践参考。 阅读详情

相关推荐

无线网卡选购指南:哪些型号支持Kali Linux的监听模式?附免驱动网卡推荐

本文详细解析了如何在Kali Linux下选购支持监听模式的无线网卡。核心在于选择兼容的芯片组,如Atheros AR9271和Ralink RT3070等经典型号,并提供了免驱动网卡推荐与实战配置指南,帮助安全研究人员和爱好者快速搭建无线测试环境。

wind6的博客 1555

vue.js的起步

介绍 vue.js 是一个客户端js库,可以用来开发单页应用。为了一个项目的选型,我前前后后的看了angular、react、vuejs ,对前两者是佩服,对后者是爱。因为它简洁干净利索,并且还有高大上的web components实现。即使文档不多,我也愿意选择它。接下来,我们首先建立一个开始的项目,并且撸一遍开发过程中涉及到的概念和组...

weixin_33694620的博客 158

不会写GLSL?用Cesium 1.120 + Heatmap.js 2.0.5也能搞定动态洪水模拟(附完整源码)

本文介绍了一种无需GLSL编程的3D洪水动态模拟方案,结合Cesium 1.120和Heatmap.js 2.0.5实现高效可视化。通过数据层、可视化层和集成层的技术降级方案,开发者可以快速构建专业级洪水演进效果,适用于应急管理、水利工程等场景。文章包含完整源码和性能优化技巧。

weixin_30329623的博客 521

vue.js起步

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>6666</title> <script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script> </head> <body> <div id="vue_det"> <.

qq_42243957的博客 215

第39步 深度学习图像识别:Inception V3建模(Tensorflow)

第39步 深度学习图像识别:Inception V3建模(Tensorflow)

Jet4505的博客 3168

CATIA二次开发核心技术:多实体零件自动化拆解与装配生成深度解析(零件转产品)

CATIA二次开发核心技术:多实体零件自动化拆解与装配生成深度解析

KE17RS的博客 2145

# 【vue.js】vue起步练习

example 1&lt;!DOCTYPE html&gt;&lt;html lang="en"&gt;&lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;hhhh&lt;/title&gt; &lt;script src="https://cdn.jsdelivr.net/npm/vue/dist

Cembseven的博客 445

ethernet eth0: Could not attach to PHY

整个流程看下来就是MAC connect PHY的过程失败了,失败的具体原因根据config_init,上图(bcm54xx_config_init) ,从此方向入手去定位原因;我这里的问题是has_gmac4没有置1,根据 has_gmac4: uses GMAC4 core.按照上面的调用逻辑,添加了部分打印,定位到__phy_read接口返回失败。stmmac_mdio_read 大部分都是linux的标准接口。最终取决于平台用的是哪家的phy,调用config_init。

无线互联&网络介绍 2702

Vue.js 起步

Vue.js 起步

qq_54539884的博客 367

51单片机8×8LED点阵屏动态显示取模汉字+ Proteus仿真

51单片机8×8LED点阵屏动态显示取模汉字+ Proteus仿真 Proteus仿真 取模软件:pctolcd2002 程序代码 #include<reg52.h> unsigned char code taba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//行选 unsigned char code tabb[]={0x08,0x49,0x49,0x7F,0x08,0x49,0x49,0x7F};//选列"出" unsigned cha

perseverance51博客 8055

人工智能之数学基础:弄懂数学本质,让我们不再害怕数学

数学的用途远远超过了人们的想象,甚至无处不在,任何领域都需要用到数学知识,人工智能也不例外。我将尽可能地将数学知识和机器学习算法相结合,让大家知道这些数学知识咋人工智能领域中的应用,使得数学的学习不会过于枯燥,同时也帮助大家扫清在学习算法过程中的数学障碍。除此之外,我还希望帮助大家建立一种不一样的数学思维,不再将数学看成是符号的演算、公式的推导,而是将数学看成是一种描述这个世界的工具,这样你就会发现这个世界处处有数学。当我们面对问题的时候,你是否会对问题进行抽象,然后通过数学来解决问题?

huanfeng_AI的博客 632

Vue.js起步

Vue.js前言Vue 实例el:data:method: 前言 Vue 官网指路 Vue 是一种渐进式JavaScript框架,Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统。 我们在前期练习Vue时可创建一个 .html 文件,在文件中引入 Vue.js 的文件。 Vue.js文件在这里哦,大家可以自行下载到本地后引入到自己的代码中。 Vue 实例 <body> <div id="app"> {{message}}

小鱼干儿的博客 162

YOLOv13改进策略【YOLO和Mamba】| 替换骨干 Mamba-YOLOv13-T !!! 最新的发文热点

模块是模型中的一个重要组成部分,其主要作用是在模型的初始阶段对输入图像进行处理,方便后续的特征提取和目标检测。以下是对。

Limiiiing的博客 353

Vue.js + Rails 起步套件常见问题解决方案

Vue.js + Rails 起步套件常见问题解决方案 项目基础介绍 Vue.js + Rails 起步套件是一个开源项目,旨在帮助开发者快速搭建基于 Rails 和 Vue.js 的全栈应用程序。该项目提供了 Rails 6 和 Vue.js 2 的集成模板,包含了 PWA、Turbolinks、Webpacker、Bootstrap 以及 AdminLTE 主题等现代化的前端技术。主要编程语言...

gitblog_00734的博客 851

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

移动应用开发Vue.js起步(一)

移动应用开发技术介绍 一、对比优势 ) 一、对比优势 Web App的优势: 1.开发成本低 2.适配多种移动设备成本低,跨平台和终端 3.迭代更新容易 4.无需安装成本 Web App的劣势: 1.浏览的体验短期内还无法赶上原生应用 2.需要掌握html5离线模式的开发 3.消息推送不够及时 4.调用本地文件系统的能力弱 ...

自己记录用的博客 526

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Vue.js入门教程—快速起步(4)

1. 开始 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <div id="app"> {{message}} </div> <script src="js/vue.js"></script&gt

tpzmz08的专栏 173

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Vue.js起步基础

介绍 Vue.js是什么? Vue.js是一套构建用户界面的渐进式框架。与其它重量级框架不同的是,Vue采用自底向上增量开发的设计。Vue的核心库只关注视图层,它不仅易于上手,还便于与第三方库或既有项目整合。 安装 兼容性:Vue.js不支持IE8及其以下版本,因为Vue.js使用...

chunwujue9927的博客 183

Laravel 与 Vue.js 结合的现代化 SaaS 起步套件使用教程

Larasonic 是一个现代化的、开源的 SaaS 起步套件,它基于 Laravel、Vue.js、TailwindCSS 和 Inertia.js 技术栈构建。该项目旨在为开发者提供一个功能丰富、易于定制的开发环境,以便快速启动并构建高质量的生产级应用程序。 Larasonic 的特点包括: - 极佳的开发者体验 - 生产环境就绪的 Docker 配置 - 先进的认证系统 - 支持支付集成

gitblog_00346的博客 857

vue.js 学习——起步

Vue.js 是一个数据驱动的js框架。最方便的一点就是,模板和数据是完全绑定的。不需要在timeout的时候调用$apply,或者监听store的事件,完全是自动更新的。

u013237862的博客 522
上一篇: 优化 SQL SELECT 语句性能的 6 个简单技巧
下一篇: 和各种诡异 Bug 打交道 13 年,我总结了 18 个经验
bb_it007
博客等级 码龄10年 15粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值