src/utils目录支持SSR (#51)

This commit is contained in:
张敏 2017-07-06 10:02:09 +08:00 committed by GitHub
parent c332caa229
commit 602dd4844c
3 changed files with 25 additions and 4 deletions

View File

@ -18,6 +18,22 @@
<van-step>交易完成</van-step>
</van-steps>
</example-block><example-block title="只显示步骤条">
<van-steps direction="vertical" :active="0" active-color="#f60">
<van-step>
<h3>城市最新的物流状态之类的表述哈哈哈哈</h3>
<p>2016-07-12 12:12:12</p>
</van-step>
<van-step>
<h3>城市已经过了的物流状态我是折行我是折行我是折行联系电话158630099999</h3>
<p>2016-07-12 12:12:12</p>
</van-step>
<van-step>
<h3>未发货</h3>
<p>2016-07-12 12:12:12</p>
</van-step>
</van-steps>
</example-block><example-block title="高级用法">
<van-steps :active="active" title="等待商家发货">
<van-icon slot="icon" name="like"></van-icon>

View File

@ -6,6 +6,8 @@
* <div v-clickoutside="handleClose">
* ```
*/
import Vue from 'vue';
const isServer = Vue.prototype.$isServer;
const clickoutsideContext = '@@clickoutsideContext';
export default {
@ -20,7 +22,7 @@ export default {
methodName: binding.expression,
arg: binding.arg || 'click'
};
document.addEventListener(el[clickoutsideContext].arg, documentHandler);
!isServer && document.addEventListener(el[clickoutsideContext].arg, documentHandler);
},
update(el, binding) {
@ -28,7 +30,7 @@ export default {
},
unbind(el) {
document.removeEventListener(
!isServer && document.removeEventListener(
el[clickoutsideContext].arg,
el[clickoutsideContext].documentHandler);
},

View File

@ -1,3 +1,6 @@
import Vue from 'vue';
const isServer = Vue.prototype.$isServer;
const trim = function(string) {
return (string || '').replace(/^[\s\uFEFF]+|[\s\uFEFF]+$/g, '');
};
@ -66,7 +69,7 @@ export const once = function(el, event, fn) {
};
export const on = (function() {
if (document.addEventListener) {
if (!isServer && document.addEventListener) {
return function(element, event, handler) {
if (element && event && handler) {
element.addEventListener(event, handler, false);
@ -82,7 +85,7 @@ export const on = (function() {
})();
export const off = (function() {
if (document.removeEventListener) {
if (!isServer && document.removeEventListener) {
return function(element, event, handler) {
if (element && event) {
element.removeEventListener(event, handler, false);