初識vue系列之二
vue中的dom操作
-
兩步:
- 給我們想要操作的dom元素加上ref屬性,並賦值:
<div ref="mydiv"></div>
- 做了這個操作之年,vue內部會獲取所有有ref屬性元素.
- 在想要操作dom的程式碼的位置寫
this.$refs.mydiv
,這個物件表示的是我的要操作的div這個元素的原生dom物件。 - 最終有了這個物件,就嚮往常一樣操作dom就可以了!
- 給我們想要操作的dom元素加上ref屬性,並賦值:
-
設計師!
1.4. vue父子元件相互傳值(傳資料)
1.4.1. 父元件給子元件傳值:
-
- 在元件中使用子元件
<div> <Add test="哈哈" :mylist="list"></Add></div>
- 給使用的子元件標籤新增屬性,屬性的值就是我們要傳遞的值,最終子元件可以接收到test和mylist對應的值
- 所謂的傳遞值,其實vue底層是把test的值mylist賦給了子元件的例項物件
- 在元件中使用子元件
-
- 父元件可以給子元件傳很多值, 子元件可以有選擇的接收:
- 接收時,要給子元件新增props屬性,屬性值為陣列,陣列中的元素就是我們想要接收的資料對應的屬性名
props:['test','mylist']
var test = 3 子元件例項物件.test = test
父給子傳,其實是賦值:
子元件例項.屬性 = 父元件例項.屬性
1.4.2. 子給父傳值
呼叫的其實是方法 預先在父元件中寫好方法,在子元件中想辦法呼叫這個方法
getdata2(arg){}
- 在父元件中寫子元件標籤時,要給子元件標籤註冊事件:
<Son @隨便起名字A="getdata2"></Son>
- 在子元件中,當我們想呼叫getdata2這個方法時,
this.$emit('隨便起名字A',傳遞給getdata2的引數)
this.$emit裡其實最終是呼叫了父元件例項的getdata2方法
1.4.3. 元件的生命週期
-
只是說明的是個過程
- 我們出現之前... beforeCreated(){}
- 我們細胞出現後:created()
- 出生是: mounted() ....
- 結束
-
beforecreate
-
- created: 例項建立完成後呼叫
-
- mounted: dom結構載入完成: 當前元件的template新增到dom中之後呼叫
1.5. 路由
npm install vue-router --save
hashchange
事件,當url錨點改變時會觸發這個事件- 1.定義要用到的元件
- 2.配置路由規則
- 3.建立VueRoter例項,並傳入2中配置的規則,routes
- 4.new Vue例項,並傳3中建立的例項,賦值router屬性
- 5.指定路由中配置的元件在dom中的顯示位置,
-
最終路由對應的元件會替換router-view
-
1.6. webpack
npm install webpack -g
npm install webpack-dev-server -g
1.6.1. 神器!
- npm 預設是從npm官網下載的包
- 其實可以第一次聯網,以後就不用聯網了
1.6.2. sinopia
- 1.下載:
npm install -g sinopia
1.6.3. 明天需要下載的包
1.6.3.1. 全域性下載的
npm install webpack -g
npm install webpack-dev-server -g
1.6.3.2. 非全域性下載的
npm install webpack
npm install webpack-dev-server
npm install babel-core
npm install babel-preset-es2015
npm install html-webpack-plugin
npm install less
npm install bable-loader
npm install less-loader
npm install file-loader
npm install url-loader
npm install style-loader
npm install css-loader
npm install less-loader
-
npm install vue-loader
-
--save
- 是瀏覽器執行時需要的
- node執行時需要
-
--save-dev
- 是開發時必需要有的
- nodemon --save-dev
- 表明程式碼在執行時,可以不用它
-
babel-preset-es2015 --save-dev
- 將es6轉換為es5,是在瀏覽器執行程式碼之前
- 是在開發的時候就轉換好的
- const a = 3: var a = 3
-
jquery --save
-
$('div').html('xxx')
-
vue --save
-
webpack --save-dev
- less-loader --save-dev
vue-router --save
-g
相關文章
- 初識vue系列一Vue
- 初識VueVue
- 初識weex系列(前端視角) - 使用vue2.0前端Vue
- Vue初識、el、dataVue
- webgl 系列 —— 初識 WebGLWeb
- Tornado框架知識系列之二框架
- RabbitMQ系列之---初識RabbitMQMQ
- 初識oracle block系列(一)OracleBloC
- 初識 Vue(19)---(Vue 中使用插槽(slot))Vue
- Flutter 系列文章:初識FlutterFlutter
- D3.js系列 --- 初識JS
- Angular 4 系列(一)初識 AngularAngular
- 初識分散式:MIT 6.284系列(一)分散式MIT
- MyBatis 框架系列之基礎初識MyBatis框架
- Weex開發系列(一):初識Weex
- IdentityServer4系列 | 初識基礎知識點IDEServer
- 吳恩達機器學習系列0——初識機器學習吳恩達機器學習
- webpack4系列教程(一):初識webpackWeb
- Linux C++ 自學筆記之二<菜鳥初學系列> (轉)LinuxC++筆記
- 我的新寵Vue a系列 專案初構Vue
- Vue 框架-09-初識元件的應用Vue框架元件
- Vue 學習筆記 (一) -- 初識 VueCli 3Vue筆記
- Android Architecture Components 系列一(初識)Android
- Weex 探索系列(一)初識和環境搭建
- 初識weex系列(前端視角) - 步入正軌前端
- 初識weex系列(前端視角) - 環境搭建前端
- Binder面試系列之二面試
- webpack系列之二TapableWeb
- VUE從零開始系列(初體驗),呆萌小白上手VUEVue
- 小程式初識--仿Vue.js中文論壇Vue.js
- Gradle入門系列(四)——初識Gradle TaskGradle
- 大資料系列1:一文初識Hdfs大資料
- 初識 weex 系列(前端視角) - 基礎完結前端
- Gradle for Android 系列:初識 Gradle 檔案GradleAndroid
- Gradle入門系列(三)——初識Gradle與ProjectGradleProject
- 我的 golang 學習筆記系列四:反射初識Golang筆記反射
- 計算機取證系列教程:初識MACtimes薦計算機Mac
- Vue初學Vue