92国产精品视频_亚洲a级在线观看_国产精品电影观看_国产精品免费观看在线_精品伊人久久97_亚洲人成在线观_尤物九九久久国产精品的特点_成人激情在线播放_成人黄色大片在线免费观看_亚洲成人精品久久久_久久免费视频在线观看_久久精品国产一区_国产一区二区三区18_亚洲欧美中文字幕在线一区_日韩美女中文字幕_日韩视频免费在线

首頁

vue相關配置

前端達人

VeeValidator

語言設置

校驗消息默認是英文的,定義中文或其他語言的錯誤提示消息


  1. import VeeValidate from 'vee-validate';
  2. import Vue from 'vue'
  3. Vue.use(VeeValidate)
  4. var dict = {
  5. zh_CN: {
  6. messages: {
  7. required: function(field){
  8. return field + '不能為空!';
  9. },
  10. between: function(field){
  11. return field + '輸入不符合設定規則!';
  12. },
  13. min : function (field,leng) {
  14. return field + '長度不能小于'+leng+'位';
  15. }
  16. }
  17. }
  18. };
  19. VeeValidate.Validator.localize('zh_CN', dict.zh_CN);

校驗的時候需要設置語言

this.$validator.localize('zh_CN');

錯誤消息顯示

顯示指定字段的第一個錯誤

this.$validator.first('fieldname')

顯示所有字段的第一個錯誤消息

this.$validator.errors.all()

Mock.js

配置

路由攔截配置不需要修改之前的代碼,匹配的url請求會直接通過mock而不是請求服務器


  1. const handler = req => {
  2. return {mock數據};
  3. }
  4. Mock.mock('url攔截規則,正則表達式',handler)

配置延遲時間

模擬服務器請求的異步特性


  1. Mock.setup({
  2. timeout:1000
  3. })

Vuex

模塊化

多人協作,或者中大型的項目需要把store分為模塊


  1. const a = {
  2. state : {foo:1},
  3. mutations : {hello(state)=> {}},
  4. modules : {
  5. ...嵌套
  6. }
  7. }
  8. const b = {}
  9. const store = {
  10. state : {},
  11. mutations : {},
  12. actions : {},
  13. modules : {
  14. module_name_a:a,
  15. module_name_b:b
  16. }
  17. }

在調用的時候,state 有命名空間的,而mutation和actions都與父模塊共用同樣的命名空間所以不能定義與父模塊同名的mutation 或 action

獲取模塊的state

 this.$store.state.module_name_a.foo

調用模塊的mutation

this.$store.commit('hello')

namespace

定義了namespace ,mutations 和 action 會帶上模塊的命名: module_name/muation


  1. const store = {
  2. modules : {
  3. namespace : true,
  4. a: {
  5. muations : {
  6. test(state) => {...}
  7. }
  8. }
  9. }
  10. }

這時候調模塊內的mutation

this.$store.commit('a/test')

vuejs-datepicker

日期選擇控件

設置默認值

 <datepicker v-model="mydate" </datepicker> 

日期格式化

<datepicker :format="'yyyy-MM-dd'"> </datepicker> 

語言選擇(默認是英文)

導入語言資源文件,然后再設置:language

設置成中文


git學習記錄

前端達人

一、建立一個庫



1、git clone [url]    // 克隆代碼



2、設置貢獻者



      git config --global user.name ""   // 設置當前本地庫username



      git config --global user.email "
"   // 設置當前本地庫useremail



      git config --global user.email   // 查看當前本地庫useremail



      git config --list   // 查看所以配置項

二、git的三個區

1、工作區:本地編寫代碼的地方叫工作區

2、暫存區:工作區改好的代碼先提交到暫存區,然后由暫存區將代碼提交到版本庫

     - 作為過渡層

     - 避免誤操作

     - 保護工作區和版本區

     - 分支處理


TypeScript

前端達人

TypeScript是什么

Type+EcmaScript6

TypeScript是JavaScript的強類型版本。然后在編譯期去掉類型和特有語法,生成純粹的JavaScript代碼。由于最終

在瀏覽器中運行的仍然是JavaScript, 所以TypeScript并不依賴于瀏覽器的支持,也并不會帶來兼容性問題。

TypeScript是JavaScript的超集,這意味著他支持所有的JavaScript語法。并在此之上對JavaScript添加了- -些擴

展,如class / interface / module等。這樣會大大提升代碼的可閱讀性。

和JavaScript若類型不同,TypeScript這種強類型語言最大的優勢在于靜態類型檢查,可以在代碼開發階段就預知一

些低級錯誤的發生。

●-種類似于JavaScript的語言,在JavaScript的基礎之上增加了類型,同時增強了JavaScript部分語法功能

●遵循EcmaScript 6標準規范

●由微軟開發

●Angular2框架采用TypeScript編寫

●背后有微軟和谷歌兩大公司支持

●TypeScript可以編譯成Javascript從而在支持Javascript的環境中運行

●TypeScript和javascript的關心就好比less和css的關系



javascript 是動態的

可以在執行階段重新賦值不同的類型數據

.ts 后綴表示一個TypeScript文件

Typescript兼容es6

TypeScript為javascript增加了類型的概念

Typescript是強類型 一旦定義數據的類型 不能動態修改這 樣幫我們在開發階段避免很多低級錯誤

echarts數據動態更新和dataZoom被重置的解決方案

前端達人

1.全局綁定滾輪事件,獲得dataZoom的位置:



myChart.on('dataZoom',function(event){

    if(event.batch){

    start=event.batch[0].start;

    end=event.batch[0].end;

    }else{

    start=event.start;

    end=event.end;

    };

});

2.把的start和end賦值給要更新的option



window.setInterval(function () {

    num=Math.random()*num+100;

data0.splice(0,1);

data0.push(num);

 

option.dataZoom[0].start=start;

option.dataZoom[0].end=end;

myChart.setOption(option);    

},3000);

Vue 數據持久化

前端達人

方法一:使用 localStorage 存儲數據

window.localStorage.setItem(key,value)

 

方法二:使用 vuex-persistedstate插件

vuex 存在一個痛點,就是刷新以后vuex里面存儲的state就會被瀏覽器釋放掉(state都是存儲在內存中的)。

辦法:

通過vuex-persistedstate插件,實現將數據存儲到本地。

1.實現

import createPersistedState from 'vuex-persistedstate'
export default new Vuex.Store({
    state:{},
    getters:{},
    actions:{},
    mutations:{},
    modules:{},
    plugins: [createPersistedState()]  //加上這個就可以了 //里面設置需要緩存的內容
})

API:  https://www.npmjs.com/package/vuex-persistedstate

方法三: 使用vue-cookie插件

cookie 可以設置過期時間

import Vue from 'vue';
import Vuex from 'vuex';

Vue.use(Vuex)
var VueCookie = require('vue-cookie');

export default new Vuex.Store({
  state: {
    token: VueCookie.get('token')
  },
  mutations: {
    saveToken(state, token) {
      state.token = token;
      // 設置存儲
      VueCookie.set('token', token, { expires: '30s' });
    }
  },
  actions: {

  }
})

vue使用路由進行頁面跳轉時傳遞參數

前端達人

一. 通過router-link進行跳轉

<router-link

:to="{

path: 'yourPath',

    params: {

    name: 'name',

        dataObj: data

},

query: {

    name: 'name',

        dataObj: data

}

}">

</router-link>

二. 通過編程導航 $router進行路由跳轉

1.路徑后拼接參數

通過路徑后直接拼接來傳遞參數



getDescribe(id) {

// 直接調用$router.push 實現攜帶參數的跳轉

        this.$router.push({

          path: /describe/${id},

        })



對應路由配置

注意:此方法需要修改對應路由配置,需要在path中添加/:id來對應 $router.push 中path攜帶的參數。



 {

     path: '/describe/:id',

     name: 'Describe',

     component: Describe

   }



獲取傳遞的參數值



this.$route.params.id

  1. 通過params來傳遞參數

    傳遞參數

    通過路由屬性中的name來確定匹配的路由,通過params來傳遞參數。



     this.$router.push({

              name: 'Describe',

              params: {

                id: id

              }

            })



    對應路由配置

    注意這里不能使用:/id來傳遞參數了,因為已經使用params來攜帶參數了。



    {

         path: '/describe',

         name: 'Describe',

         component: Describe

       }



    獲取參數



    this.$route.params.id

    1
  2. 通過query來傳遞參數

    傳遞參數

    使用path來匹配路由,然后通過query來傳遞參數

    這種情況下 query傳遞的參數會顯示在url后面?id=?



    this.$router.push({

              path: '/describe',

              query: {

                id: id

              }

            })



    對應路由配置



     {

         path: '/describe',

         name: 'Describe',

         component: Describe

       }



    獲取參數



    this.$route.query.id




日歷

鏈接

個人資料

藍藍設計的小編 http://m.skdbbs.com

存檔

92国产精品视频_亚洲a级在线观看_国产精品电影观看_国产精品免费观看在线_精品伊人久久97_亚洲人成在线观_尤物九九久久国产精品的特点_成人激情在线播放_成人黄色大片在线免费观看_亚洲成人精品久久久_久久免费视频在线观看_久久精品国产一区_国产一区二区三区18_亚洲欧美中文字幕在线一区_日韩美女中文字幕_日韩视频免费在线
8050国产精品久久久久久| 亚洲精品免费在线| 精品一区二区在线免费观看| 国产欧美一区二区三区在线老狼| 欧美精品自拍偷拍动漫精品| 久久精品影视| 日韩av懂色| 久热精品视频在线免费观看| 99国产精品久| 黄色精品一区二区| 国产成人综合在线| 亚洲小说欧美另类婷婷| 亚洲成人三级在线| 国产精品一国产精品k频道56| 日韩母乳在线| 快播电影网址老女人久久| 久久偷看各类女兵18女厕嘘嘘| 欧美绝品在线观看成人午夜影视| 丝袜诱惑亚洲看片| 超碰在线最新网址| 日韩中文第一页| 2020国产精品久久精品不卡| 国产成人精品一区二三区在线观看| 国产丝袜精品丝袜| 欧美精选视频在线观看| 成人av免费看| 亚洲欧美日韩一区二区三区在线观看| 中文字幕日韩精品有码视频| 国产成人精品日本亚洲11| 午夜精品成人在线视频| 亚洲一区在线视频| 亚洲大胆人体视频| 91久久国产自产拍夜夜嗨| 午夜影院免费在线| 国产精品无遮挡| 亚洲人成电影网站色| 麻豆久久久久久久| 亚洲九九爱视频| 私拍精品福利视频在线一区| 欧美插天视频在线播放| 日本一区福利在线| 日韩精品福利在线| 成人台湾亚洲精品一区二区| 欧美精品色一区二区三区| 青青青免费在线视频| 成人免费黄色| 亚洲国产专区校园欧美| 亚洲精品视频观看| 久久国产视频网站| 亚洲精品小区久久久久久| 国产色91在线| 日韩欧美一级在线播放| 成人免费大片黄在线播放| 青草青草久热精品视频在线观看| 欧美精品1区2区3区| 日本aⅴ大伊香蕉精品视频| 免费在线观看的电影网站| 38少妇精品导航| 精品9999| 国产精品麻豆网站| 欧美第十八页| 在线中文字幕第一区| 日韩精品电影| 欧美高清videos高潮hd| 国产精品全国免费观看高清| 国产在线视频欧美一区二区三区| 欧美三级午夜理伦三级在线观看| 国产精品99久久| 日本一二区不卡| 337p日本欧洲亚洲大胆鲁鲁| 久久伊人色综合| 中文av一区二区| 欧美三级午夜理伦三级在线观看| 欧美成人精品1314www| 97在线资源站| 成人福利视频在线| 日韩免费电影一区二区三区| 欧美精品电影在线| 国产一区二区高清| 日本美女一区| 欧美女孩性生活视频| 在线观看网站黄不卡| 欧美性猛交xxxx偷拍洗澡| 性伦欧美刺激片在线观看| 精品久久久久久国产91| 国内揄拍国内精品| 亚洲精品国产品国语在线app| 欧美成aaa人片免费看| 日韩中文字幕在线| 国产日韩精品视频一区| 欧美精品久久久久久久免费观看| 午夜日韩激情| 日本三级久久久| 国产精品人人爽人人做我的可爱| 国产va免费精品观看精品| 国偷自产av一区二区三区| 免费日韩一区二区三区| 欧美日韩在线大尺度| 日韩欧美在线视频日韩欧美在线视频| 蜜桃视频免费观看一区| 欧美日本在线看| 欧美酷刑日本凌虐凌虐| 99免费在线观看视频| 欧美一级欧美三级在线观看| 51精产品一区一区三区| 日韩一区二区在线看片| 亚洲2区在线| 欧美tickling挠脚心丨vk| 成人综合在线网站| 国产乱码精品一区二区三区日韩精品| 亚洲一区二区三区中文字幕在线| 亚洲最黄网站| 国产亚洲字幕| 亚洲精品乱码久久久久久蜜桃91| 欧美视频一区二区三区| 成人黄色短视频在线观看| 自拍自偷一区二区三区| 成人在线观看一区| 亚洲国产精华液网站w| 一区二区三区高清在线| 久久精品国产**网站演员| 久久99热只有频精品91密拍| 亚洲精品av在线| 精品高清久久| 香蕉久久a毛片| 99re视频在线| 久久九九99视频| 亚洲三级在线看| 亚洲一区二区三区激情| 国产精品白嫩初高中害羞小美女| 国产精品久久久久久久裸模| 天堂网在线最新版www中文网| 欧美性猛交xxxx乱大交| 欧美亚日韩国产aⅴ精品中极品| 亚洲精品黄网在线观看| 日韩高清在线观看| 亚洲国产日韩精品在线| 亚洲成人蜜桃| 色综合久久六月婷婷中文字幕| 国产麻豆91精品| 日韩美脚连裤袜丝袜在线| 91青青国产在线观看精品| 国产精品一区二区三区在线播放| 精品欧美日韩| 日韩欧美三级| 久久久爽爽爽美女图片| 好看的日韩精品| 精品动漫3d一区二区三区免费| 久久精品国产亚洲一区二区三区| 亚洲美女av网站| 久久亚洲精品中文字幕冲田杏梨| 亚洲第一精品夜夜躁人人躁| 亚洲男人天堂av| 亚洲一区制服诱惑| 九色精品免费永久在线| 日本不卡一区二区三区高清视频| 97欧美精品一区二区三区| 国产69精品久久| 日韩精品欧美大片| 亚洲综合自拍偷拍| 日韩精品中午字幕| 波多野结衣在线观看一区二区三区| av中文字幕在线不卡| 亚洲小少妇裸体bbw|