2017-08-03 87 views
1

我有一個插件,我不希望客戶端看到。不幸的是,它始終爲服務器和客戶端構建。這怎麼能被阻止?僅插件服務器端

<template> 
    <div> 
     Test 
    </div> 
</template> 

<script> 
    import getAll from '~/plugins/api' 
    export default { 
     asyncData (context, callback) { 
      getAll(function(data){ 
       callback(null,data); 
      }) 
     } 
    } 
</script> 

這是我的.vue文件。數據的獲取正在工作,但我也可以從客戶端看到我不想要的代碼。

回答

1

也許你可以使用context.isServer屬性。
這是一個布爾值,讓你知道你是否真的從服務器端渲染。

<script> 
import getAll from '~/plugins/api' 
export default { 
    asyncData (context, callback) { 
     if (context.isServer) { 
      getAll(function(data){ 
       callback(null,data); 
      }) 
     } 
    } 
} 
</script> 

更多關於這裏Nuxt上下文說明:https://nuxtjs.org/api/context