鍍金池/ 問(wèn)答/ HTML問(wèn)答
半心人 回答

你在my-header組件里面只是注冊(cè)了my-top組件卻并沒(méi)有進(jìn)行調(diào)用。將my-header的字符串模板改寫為

'<h3> this is a parent <my-top></my-top></h3>'
我以為 回答

cdn redis緩存,能用上全用上,干嗎非要生成靜態(tài)html
我有個(gè)網(wǎng)站,php寫的,第一次訪問(wèn)渲染一下頁(yè)面,接下來(lái)的訪問(wèn)就全是cdn返回了,沒(méi)有必要生成靜態(tài)html嗎

下墜 回答

可以點(diǎn)擊切換class,通過(guò)class設(shè)置樣式

尛曖昧 回答

iframe 的 onload 事件 判斷 contentWindow.location.pathname 是否是 Account/Login

憶往昔 回答

個(gè)人感覺(jué)是這樣的
方法一:
當(dāng)?shù)搅说?個(gè)的時(shí)候direction變成vertical變成豎向的
第四個(gè)也是
到了第5個(gè)或者是第六個(gè)的時(shí)候在變成horizontal變成橫向的
方法二:
或者是到了第二個(gè)要切換第三個(gè)的時(shí)候

var i=0 //當(dāng)3頁(yè)滾動(dòng)到底部的時(shí)候變成1
var mySwiper = new Swiper('.swiper-container',{
  on: {
    slideChangeTransitionStart: function(){
         if(this.activeIndex==3 && i==0){
             alert('看完之后再回去');
             mySwiper.slideTo(2);
         }
    },
  },
})
囍槑 回答

使用箭頭函數(shù)

const doLogin = function (username, password, v, callback) {
};
doLogin(localStorage.username, localStorage.password, this, (res, msg) => {
        if (res) {
          this.$store.commit({
            type: 'login',
            username: res.name,
            token: res.token,
          });
        }
});
詆毀你 回答

Refresh Token不在jwt的范疇內(nèi),你需要自己實(shí)現(xiàn)Refresh Token的邏輯。比如監(jiān)聽(tīng)到jwterror類型expired的時(shí)候,更新token。

別硬撐 回答

flask view里面調(diào)用subprocess.Popen去執(zhí)行腳本,subprocess會(huì)生成一個(gè)子進(jìn)程去執(zhí)行腳本,可以立即返回

黑與白 回答

this的指向問(wèn)題
this.props.memberStore里面有page屬性嗎?
如果有的話可以用這種方式

this.props.memeberStore.updatePage()

如果沒(méi)有的話就需要在store的constructor里面增加

this.page = page
念初 回答

proxyTable改動(dòng)一下:

 dev: {
    // Paths
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    proxyTable: {
         // 去掉這個(gè)注釋
      '/admin': {
        target: 'http://localhost:8004',
        changeOrigin: true
      }
    },

    // Various Dev Server settings
    host: 'localhost', // can be overwritten by process.env.HOST
    port: 8080, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
    autoOpenBrowser: false,
    errorOverlay: true,
    notifyOnErrors: true,
    poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-

    
    /**
     * Source Maps
     */

    // https://webpack.js.org/configuration/devtool/#development
    devtool: 'cheap-module-eval-source-map',

    // If you have problems debugging vue-files in devtools,
    // set this to false - it *may* help
    // https://vue-loader.vuejs.org/en/options.html#cachebusting
    cacheBusting: true,

    cssSourceMap: true
  },
青檸 回答

你這代碼習(xí)慣,直接這樣寫 border:1px solid #000。你這對(duì)不齊是因?yàn)槟惆裝order-top設(shè)置為0了,當(dāng)然會(huì)向上挪動(dòng)一點(diǎn)了

不舍棄 回答

element官網(wǎng)說(shuō)了下,讓open事件里面調(diào)用tree,雖然可以用,但是控制臺(tái)會(huì)報(bào)錯(cuò),最后我選擇了open事件里面,再調(diào)用超時(shí)器,這樣的下一輪事件循環(huán)里調(diào)用,不報(bào)錯(cuò)并且可以用

過(guò)客 回答

理清思路
obj用于繼承,結(jié)構(gòu)是一個(gè)json對(duì)象,存在多層嵌套,但不會(huì)存在函數(shù);
obj1繼承obj,可能會(huì)重新賦值,賦值后的字段永遠(yuǎn)優(yōu)先于obj,若無(wú)該字段無(wú)重新賦值,則隨obj改變而更新;
obj0用于存放obj需要重寫的字段;

let obj0 = {
//  'b': 33,
//  'd':{'d':88},
  'f': [4,5,6],
  'g':[{
    'g0': 7,
    'g1': 7,
  }]
};

function deepPrototypeClone(obj) { //繼承obj
  const ret = Object.create(obj);
  for (const [key, value] of Object.entries(obj)) {
    if (value && typeof value === 'object') {
      ret[key] = deepPrototypeClone(value);
    }
  }
  return ret;
}
    
function updateObj(obj0,obj){ //obj更新obj0中的數(shù)據(jù)
  for (const [key, value] of Object.entries(obj0)) {
    if(value && value instanceof Array){
      if(typeof value[0] === 'object'){
        for(let i=0; i<value.length; i++){
          updateObj(value[i],obj[key][i]);
        } 
      }else{
        obj[key].splice(0,obj[key].length,...value) ;
      }
    }else{           
      obj[key] = value;
    }
  }
};

let obj1 = deepPrototypeClone(obj); //obj1繼承obj
//obj1.b = 22;
//obj1.d.d = 99;
//obj1.f = [5,5,5];
//obj1.g[0].g0 = '8';
//obj1.h = [['7','5']];
updateObj(obj0,obj); //obj調(diào)整,obj1隨之更新
console.log("obj");
console.log(obj.b); console.log(obj.d.d); 
console.log(obj.f); console.log(obj.g[0]); console.log(obj.h[0]);
console.log("obj1");
console.log(obj1.b); console.log(obj1.d.d); 
console.log(obj1.f); console.log(obj1.g[0]); console.log(obj1.h[0]);

最近在做vue的時(shí)候監(jiān)聽(tīng)頁(yè)面滾動(dòng)發(fā)現(xiàn)document.body.scrollTop一直為0
但是發(fā)現(xiàn)document.body.scrollTop一直是0。
查資料發(fā)現(xiàn)是DTD的問(wèn)題。
頁(yè)面指定了DTD,即指定了DOCTYPE時(shí),使用document.documentElement。
頁(yè)面沒(méi)有DTD,即沒(méi)指定DOCTYPE時(shí),使用document.body。
IE和Firefox都是如此。

網(wǎng)妓 回答

可以使用vm.$on和vm.$emit
1、A頁(yè)面用vm.$on定義要監(jiān)聽(tīng)的事件 vm.$on('test', msg => console.log(msg))
2、B頁(yè)面在選擇后返回時(shí)用 vm.$emit('test', 'msg') 觸發(fā)函數(shù)
從B頁(yè)面返回A頁(yè)面的操作最好不要用push跳轉(zhuǎn),不然在瀏覽器的回退和安卓物理返回鍵上操作體驗(yàn)不友好
當(dāng)然你可以用本地緩存