美文网首页
要好好看噢

要好好看噢

作者: dayindayout | 来源:发表于2018-03-05 20:06 被阅读0次

vue

vuex 的状态

state--存放项目中需要多组件共享的状态

mutations---更改state里状态的方法

getters---就是从state中派生出状态,比如将state中的某个状态进行过滤然后获取新的状态。

actions---它可以通过commit mutations中的方法来改变状态,最重要的是它可以进行异步操作。

modules---就是当用这个容器来装这些状态还是显得混乱的时候,我们就可以把容器分成几块,把状态和管理规则分类来装。这和我们创建js模块是一个目的,让代码结构更清晰。

Vuex是一个专为Vue服务,用于管理页面数据状态、提供统一数据操作的生态系统。它集中于MVC模式中的Model层,规定所有的数据操作必须通过 action – mutation – state change 的流程来进行,再结合Vue的数据视图双向绑定特性来实现页面的展示更新。统一的页面状态管理以及操作处理,可以让复杂的组件交互变得简单清晰,同时可在调试模式下进行时光机般的倒退前进操作,查看数据改变过程,使code debug更加方便。

vue原理

1、劫持所有属性,watcher监听,属性有变化,更新view

2、解析指令,watcher监听,数据变化,更新view

Vue 修饰符.prevent

  .stop

  .prevent

  .capture

  .self

  .once

  to: Route: 即将要进入的目标 路由对象

  from: Route: 当前导航正要离开的路由

  next: Function: 一定要调用该方法来 resolve 这个钩子。执行效果依赖 next 方法的调用参数。

Vue如何实现双向数据绑定

function observe(data) {

    if (!data || typeof data !== 'object') {

        return;

    }

    // 取出所有属性遍历

    Object.keys(data).forEach(function(key) {

        defineReactive(data, key, data[key]);

    });

};

function defineReactive(data, key, val) {

    observe(val); // 监听子属性

    Object.defineProperty(data, key, {

        enumerable: true, // 可枚举

        configurable: false, // 不能再define

        get: function() {

            return val;

        },

        set: function(newVal) {

            val = newVal;

        }

    });

}

react跟Vue区别

状态管理vs对象属性

Jsx vs 模板

单向流,双向数据绑定

       

      Vue  keepalive

created钩子中就能缓存

meta 添加keepalive

<keep-alive>

    <router-view v-if="$route.meta.keepAlive"></router-view>

</keep-alive>

对应钩子

actived,deactived

      Vue钩子,生命周期

beforeCreate,created,beforemount,mount,beforeupdate,update,beforeDestory,destory

el为实例挂载元素

vue 动态组件

:is

<component v-bind:is="currentView"></component>

var vm = new Vue({

  el: '#example',

  data: {

    currentView: 'home'

  },

  components: {

    home: { /* ... */ },

    posts: { /* ... */ },

    archive: { /* ... */ }

  }

})

render可直接渲染dom

虚拟Dom,创建就一个包含元素信息的对象,都通过对象属性,子节点信息来创建真实dom

  sel  选择器

  data  绑定的数据

  children  子节点数组

  text  当前text节点内容

  elm  对真实dom element的引用

  key

     

Html渲染过程

Sass

  @for $i from 1 to 10 {

    .border-#{$i} {

      border: #{$i}px solid blue;

    }

  }

promise 用来传递异步操作

var getJSON = function(url) {

  var promise = new Promise(function(resolve, reject){

    var client = new XMLHttpRequest();

    client.open("GET", url);

    client.onreadystatechange = handler;

    client.responseType = "json";

    client.setRequestHeader("Accept", "application/json");

    client.send();

    function handler() {

      if (this.readyState !== 4) {

        return;

      }

      if (this.status === 200) {

        resolve(this.response);

      } else {

        reject(new Error(this.statusText));

      }

    };

  });

return promise;

};

getJSON("/posts.json").then(function(json) {

  console.log('Contents: ' + json);

}, function(error) {

  console.error('出错了', error);

});

requestanimationframe

http

请求头

Host,

User-Agent,

Content-Type,

Content-Length,

Connection

Content-type 定义网络文件以及网页的编码,决定浏览器将用什么格式,什么编码读取文件

Cache-Control 请求和响应遵循的缓存机制

[1] no-cache  ---- 不要读取缓存中的文件,要求向WEB服务器重新请求

[1] no-store    ---- 请求和响应都禁止被缓存

[2] max-age: ---- 表示当访问此网页后的max-age秒内再次访问不会去服务器请求,其功能与Expires类似,只是Expires是根据某个特定日期值做比较。一但缓存者自身的时间不准确.则结果可能就是错误的,而max-age,显然无此问题.。Max-age的优先级也是高于Expires的

  1. 解析HTML

  2. 构建DOM树

  3. DOM树与CSS样式进行附着构造呈现树

  4. 布局

  5. 绘制

回流(reflow)和repaint(重绘)

reflow:

浏览某个节点属性变化,引起周围布局变化

repaint:

回流引入重绘

amd和cmd区别

CMD 推崇依赖就近

AMD 推崇依赖前置

原型和原型链

在JavaScript中原型是一个prototype对象,用于表示类型之间的关系。

对象和对象之间也有关系,对象之间的继承关系,在JavaScript中是通过prototype对象指向父类对象,直到指向Object对象为止,这样就形成了一个原型指向的链条,专业术语称之为原型链。

Hsahchange

Jsonp跨域

事件捕获和事件冒泡

Html 

Sass 

Css3

Promise

Flex布局

Wersocket

去除所有空格: 

str  =  str.replace(/\s+/g,""); 

Call.apply

Math.floor.    向下取整

Math.ceil.    向上取整

Math.round  四舍五入

Arr.splice(index.deleteindex.item)

两者作用一致,都是把obj(即this)绑定到thisObj,这时候thisObj具备了obj的属性和方法

Object.assign

深拷贝

JSON.parse(JSON.stringify(a))

jquery$.extend(false/true,{})默认浅拷贝,深拷贝true

function deepClone(initalObj, finalObj) {

    var obj = finalObj || {};

    for (var i in initalObj) {

    var prop = initalObj[i];

    // 避免相互引用对象导致死循环,如initalObj.a = initalObj的情况

    if(prop === obj) {

        continue;

    }

        if (typeof prop === 'object') {

            obj[i] = (prop.constructor === Array) ? [] : {};

            deepClone(prop, obj[i]);

        } else {

            obj[i] = prop;

        }

    }

    return obj;

}

es6去重

new Set([1,2,1,2])

foreach map 区别

foreach不能,同时foreach不能break

map可以将返回值存储起来,同时map不能break

url输入流程

域名找到对应的ip

ip与服务器三次握手建立连接

浏览器与服务器进行通信

Webpack 工作原理

模块化

依赖管理:方便引用第三方模块、让模块更容易复用、避免全局注入导致的冲突、避免重复加载或加载不需要的模块。

合并代码:把各个分散的模块集中打包成大文件,减少HTTP的请求链接数,配合UglifyJS可以减少、优化代码的体积。

各路插件:babel把ES6+转译成ES5-,eslint可以检查编译期的错误……

let const 区别

let 申明后可以改变    cost 不可以改变

let 是块作用域声明

const let 不存在变量提升

箭头函数

不可以使用arguments

不可以用generator

不可以用当构造函数

This指向外部函数

new Fun() 所做的事情

1、创建一个空对象{}

2、继承构造函数中proptotype的对象属性

3、空对象赋值给构造函数的this对象

4、执行实例化

注:如果构造函数return 出来的是对象,则实例化后的是这个返回的对象。

否则,返回是空对象

Object.create(obj)

以某个实例对象作为模版,创建一个新的事例

例如:

var obj={

    sex:'女'

}

var obj1=Object.create(obj)

obj1.sex='男'

console.log(obj1.sex)

console.log(obj.sex)

jquery

移动端兼容

Ios点击延迟

输入框number

点击穿透

音频视频无法自动播放

Fixed缺陷

Co模块

function co(generator) {

  return function(fn) {

var gen = generator();

function next(err, result) {

if(err){

return fn(err);

}

var step = gen.next(result);

if (!step.done) {

step.value(next);

} else {

fn(null, step.value);

}

}

next();

  }

}

相关文章

  • 要好好看噢

    vue vuex 的状态 state--存放项目中需要多组件共享的状态 mutations---更改state里状...

  • 关键是 好看

    最最最关键的 就是要好看 真的 关键就是要好看

  • 鲁兆

    鲁兆的书还要好好看 江恩的书还要好好看

  • 为什么你贴个面膜都喜欢“花”

    你说,女生是不是都属于颜控?吃的食物要好看,用的文具要好看,饭的男神要好看... 毕竟,美好的事物会令人心情愉悦。...

  • 第12章是个bug

    12章要好好看

  • 立flag

    明天要好好看书!

  • PPT模仿与创造

    啊噢,第二组传上来的颜色不好看了

  • 对于要不要好看的问题的延伸

    对于要不要好看的问题的延伸 和单位的姐姐们讨论要不要好看的问题,姐姐们一致认为每个人都是要好看的,这个结论我也是9...

  • 你若盛开,清风自来

    女孩子一定要好好减肥,请一要好好护肤,一定要好好看书学习,定要好好工作赚钱。 当你又瘦又好看,脑子里有知识,外表有...

  • 学习

    下班的时候,同事过来说她要开始学习了。然后问我们谁有好看的本子,她说学习的仪式感要足,不仅要好看的本子,还要好看的...

网友评论

      本文标题:要好好看噢

      本文链接:https://www.haomeiwen.com/subject/gxqkfftx.html