v-if 也是惰性的:若是在初始渲染时条件为假,则什么也不作——直到条件第一次变为真时,才会开始渲染条件块。html
相比之下,v-show 就简单得多——无论初始条件是什么,元素老是会被渲染,而且只是简单地基于 CSS 进行切换。vue
通常来讲,v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销。所以,若是须要很是频繁地切换,则使用 v-show 较好;若是在运行时条件不多改变,则使用 v-if 较好。node
beforeDestroy
destroyed
beforeCreate
created
beforeMount
mounted
复制代码
只有从user --> 到其余路由时才会触发ios
beforeCreate
created
beforeMount
mounted
复制代码
resolve: {
extensions: ['', '.js', '.vue', '.json'],
fallback: [path.join(__dirname, '../node_modules')],
alias: {
'vue$': 'vue/dist/vue.common.js',
'src': path.resolve(__dirname, '../src'),
'assets': path.resolve(__dirname, '../src/assets'),
'components': path.resolve(__dirname, '../src/components')
}
},
vue包package.json的main指向 "dist/vue.runtime.common.js"
<!-- 这里的vue$这样是啥意思? 在组件中import vue from 'vue'究竟引入的是哪一个 -->
复制代码
<!-- 下面的localCompInfo若是换成compInfo会报错: xxx not setter -->
...mapState({
localCompInfo: state => state.comp.compInfo
}),
复制代码
每当同一个文档的浏览历史(即history对象)出现变化时,就会触发popstate事件。 注意,仅仅调用pushState()方法或replaceState()方法 ,并不会触发该事件,只有用户点击浏览器倒退按钮和前进按钮,或者使用 JavaScript 调用History.back()、History.forward()、History.go()方法时才会触发。另外,该事件只针对同一个文档,若是浏览历史的切换,致使加载不一样的文档,该事件也不会触发。 注意,页面第一次加载的时候,浏览器不会触发popstate事件vue-router
那么总结一下就是:vuex
一个组件上的 v-model 默认会利用名为 value 的 prop 和名为 input 的事件,可是像单选框、复选框等类型的输入控件可能会将 value 特性用于不一样的目的。model 选项能够用来避免这样的冲突vue-cli
Vue.component('base-checkbox', {
model: {
prop: 'checked',
event: 'change'
},
props: {
checked: Boolean
},
template: ` <input type="checkbox" v-bind:checked="checked" v-on:change="$emit('change', $event.target.checked)" > `
})
<base-checkbox v-model="lovingVue"></base-checkbox> 复制代码