组件:
组件是可以复用的,把组件当做一种标签使用,用一次,它内部的代码就会完整的执行一次,就像是一个函数一样,使用组件就相当于在调用函数,实参就相当于组件的属性值。
注意:在开发时,数据尽量不要放在data中,数据驱动页面,要这个数据未来可能发生变化,才放在data中(也就是说,你不要把数据放在data中,只有当项目需要使用data的时候,你自然就会想起它)
定义:
组件是可复用的 Vue 实例,主要用于开发中 具有相同特征不同数据的模块 把它集成为一个组件, 供重复利用。
理解:
Vue实例就是一个根组件,有点像数据结构中二叉树的根节点,Vue实例中的组件就相当于是子组件,它们拥有着根组件所有的属性。也就是说它可以像根组件一样,里面又有着子组件。
注意:
1.组件的属性不能用大写字母 ,组件的名字可以用驼峰命名法,但是使用的时候必须用连字符
2.注册的组件不要跟系统标签同名
1.全局组件、全局过滤器、全局指令:
-
全局过滤器:
Vue.filter("函数名",function(){}) -
全局自定义指令:
Vue.directive("指令名",function(el,obj){}) -
全局组件:
Vue.component("组件名",{ template:"<div>omd</div>" })
style样式、html文本:
注意:全局注册的组件使用时不能使用单标签(不会报错,但是只能使用一次 多次使用只显示第一个)
script标签:
2.局部过滤器、局部指令、局部组件:
简单点来讲:将这些方法写在组件中的,就是局部。(且局部的,都不能相互访问,即使是嵌套关系,也不行,但是局部是可以访问全局的)
一个vm实例可以有多个局部组件,但是只能供当前vm实例使用(内部组件也不能访问外层组件,外层也不能访问内层组件,同级组件更是如此)
这里的boxtool就是局部过滤器
3.单文件组件:
因为我们想要将组件中的template中的html文本转换为js文本,这个时候就可以用到我们的Vue框架了。
引入单文件组件的步骤:@1官方脚手架 @2挂载vm对象 @3组件引入并渲染到vm中。
具体步骤:
1.使用官方脚手架的方式来构建项目环境
1. cnpm install @vue/cli -g //下载官方脚手架
2. vue create app1 //项目名称
3. 接下来让你选择一些默认要生成的工具,不管直接回车
4. 进入项目文件夹: cd app1 //进入项目文件夹,也可以直接在项目文件夹中打开终端
5. 启动:
npm run serve //生成的打包文件在内存中不会写入磁盘用于开发阶段
或者
npm run build //生成的打包文件在dist中 用于项目上线
1.使用脚手架创建vue项目:新建一个文件夹打开,在cmd.exe中输入vue create 项目名
- 1.这里会让你选择,我们选择最后一个
- 2.一直enter,直到出现下面这个,根据自己的选择,选择下载vue2.0版本,还是vue3.0版本。(也就是最后两项中的一个)
- 3.一直enter,下载完毕
2.我们可以创建vue文件,在里面写代码,然后导出,在根组件(App.vue文件)中导入,使用。
3.进入项目名中的文件,启动项目:在cmd.exe中输入npm run serve
通过这上面的网址,可以进入到我们代码运行后的页面
提示:
关闭eslint的严格模式检测:
第一种方法:在创建vue项目时,就取消严格模式检测
第二种方法:在vue.config.js文件中:
// 关闭eslint的严格模式检测
lintOnSave:false
了解Vue项目文件结构
vue.config.js文件:是打包的配置文件
README.md文件:开发文档(写笔记的地方)
package.json文件:npm包配置文件,定义了项目的npm脚本,依赖包等信息
package-lock.json文件:项目依赖项、开发环境依赖项
jsconfig.json文件:转码工具
node_modules:npm 加载的项目依赖模块
babel.config.js文件:js编译器
.gitignore文件:上传需要忽略的文件配置
public文件:项目的挂载点 文件, 也是模板文件
src文件:源代码(这里是我们要开发的目录,基本上要做的事情都在这个目录里)
src文件里面包含了几个目录及文件:
1)assets:资源目录,放置一些图片或者公共js、公共css。但是因为它们属于代码目录下,所以可以用 webpack 来操作和处理。意思就是你可以使用一些预处理比如 Sass/SCSS 或者 Stylus。
2)components:用来存放自定义组件的目录,目前里面会有一个示例组件。
3)router:前端路由目录,我们需要配置的路由路径写在index.js里面;
4)App.vue:根组件;这是 Vue 应用的根节点组件,往下看可以了解更多关注 Vue 组 件的信息。
5)main.js:应用的入口文件。主要是引入vue框架,根组件及路由设置,并且定义vue实例,即初始化 Vue 应用并且制定将应用挂载到index.html 文件中的哪个 HTML 元素上。通常还会做一些注册全局组件或者添额外的 Vue 库的操作。