视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Vue脚手架的简单使用实例
2020-11-27 22:11:39 责编:小采
文档

提前申明

注意:自己对vue脚手架的理解和认识,很多东西和理解都是形象上的手法,并不专业和官方

webpack

一种项目构建工具,可以将css和js压缩成一个文件。此外,可以提供测试用服务器。使用webpack时,可以配置一些默认扩展名 和 路径别名 来在项目文件里直接使用

导入和导出

使用export命令可以将一个JS对象导出,其他JS文件可以使用import 对象名 from 路径的形式导入这个对象来使用,但是在导入时,必须知道导入导出对象的名字。如果使用export default命令导出对象的话,其他JS文件在导入时就无需知道导出对象的名字,可以自定义对象名

ps:exportimport为es6规范中的关键字,目前仅被少量JS运行平台实现,在脚手架里会被自动用babel转换成es5对应

语法组件中自定义标签名的大小写问题

在大多数浏览器解析HTML时,不区分标签的大小写。自定义标签中的大写字母会被自动转换为小写字母,如<First></First>会被转换为 first 标签,因此导致与注册时提供的标签名不一致,出现组件未正确注册的错误。

如果使用自定义组件时,代码写在template标签里,在解析时就会被当做JS解析,是区分大小写的。

组件的另外一种写法

<body>

<template id="first-c">
 <!--template以下才是组件的HTML模板,仍然只能有一个根标签-->
 <div>这是我第一个组件</div>
</template>
<div id="app">
 <first></first>
</div>
<script>
 var myTemplate = {
 template:"#first-c"
 }

 Vue.component("first",myTemplate);
 var app = new Vue({
 el:"#app"
 });
</script>
</body>

使用脚手架创建项目安装NodeJS

脚手架的安装及运行均依赖NodeJS,可以在命令行键入node -v来查看是否安装NodeJS。

下载NodeJS

配置npm全局路径

npm config set prefix "D:\nodejs\node_global"
npm config set cache "D:\nodejs\node_cache"
之后将第一个路径同时配置到环境变量path中。

配置淘宝npm镜像

npm config set registry https://registry.npm.taobao.org

安装vue-cli

在命令行中执行npm install -g vue-cli

创建模板项目

//vue init 模板名 项目名

vue init webpack simple

模板名可以在 https://github.com/vuejs-templates查看,推荐使用webpack。

之后使用cd 项目名进入项目根目录,使用npm install来自动安装项目依赖。

其他常用命令

项目根目录下执行npm run dev可以测试运行项目,执行npm run build可以正式编译项目到dist目录下。

目录结构

单文件组件

<template>
 <!--template以下才是组件的HTML模板,仍然只能有一个根标签-->
 <div>
 我是一个单文件组件
 </div>
</template>

<script>
export default {
 //无需写template,data仍然以函数返回,其他属性照旧
 data(){
 return {
 }
 },
 props:[],
 methods:{
 }
}
</script>

<!--这个scoped可以让这些样式仅在当前组件生效-->
<style scoped>

</style>

补充:在Vue脚手架中使用jquery和其他框架

在项目根目录安装jquery npm install jquery(注意大小写,jquery和jQuery不一样)。

build目录下的webpack.base.conf.js

开头加入

const webpack = require("webpack")

module.exports的最后加入(注意JS代码格式,不要忘了写逗号)

plugins: [
 new webpack.ProvidePlugin({
 jQuery: "jquery",
 $: "jquery"
 })
]

之后,需要使用jquery的组件中导入juuery,如

<script>
 import $ from 'jquery'
 export default{
 data(){
 return {
 users:null
 }
 },
 created(){
 $.get("http://127.0.0.1:3000/all_user",function(data){
 this.users = data;
 }.bind(this))
 }
 }
</script>

使用其他js框架的方法链接

下载本文
显示全文
专题