鍍金池/ 問(wèn)答
我以為 回答

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

痞性 回答

搞好了,大家有需要的可以測(cè)試下

$urlArr = array(

'https://172.16.3.33/resource/js/jquery.min.js',  
'https://172.16.3.33/resource/js/unit.js',  
'https://172.16.3.33/resource/js/dialog/jquery.artDialog.source.js',  
'https://172.16.3.33/test.js',  
'https://172.16.3.13/resource/xigua/hello.php',  

);

$urlTree = arrangeUrlTree($urlArr); //拼接數(shù)據(jù)
echo "<pre>";
print_r($urlTree);

/**

  • 整理url數(shù)組 為 url樹結(jié)構(gòu)
  • @param $arr 一維數(shù)組
  • @return array
  • @author xg

*/
function arrangeUrlTree($arr){

if(!$arr){
    return array();
}
$returnArr = array();
foreach($arr as $k => $v){
    $url = parse_url($v);//分析URL
    //print_r($url);
    $hostname = $url['scheme'].'://'.$url['host'];
    if(!isset($returnArr[$hostname])){
        $returnArr[$hostname] = array();
    }

    $pathList = explode('/',$url['path']);
    $pathList = array_filter($pathList);//去空
    $pathList = array_merge($pathList);//重新排序下標(biāo)
    $pathListCount = count($pathList);//長(zhǎng)度
    $tmpArr = &$returnArr[$hostname];//引用賦值,更新最終數(shù)組的值
    $treeLevel = 1;//樹的深度  為遍歷展示用
    foreach($pathList as $k2 => $v2){

        if($k2 == ($pathListCount-1) ) {//最后一層 則說(shuō)明是文件  否則為文件夾路徑
            $tmpArr[] = $v2;
            //$tmpArr['treeLevel'] = $treeLevel;    //等級(jí)
        }else{
            if(!isset($tmpArr[$v2])){
                $tmpArr[$v2] = array();
            }
            //$tmpArr['treeLevel'] = $treeLevel;
            $tmpArr = &$tmpArr[$v2];//重新賦值數(shù)組 用于循環(huán)整理完完整目錄
        }
        $treeLevel += 1;
    }

}

return $returnArr;

}

笨小蛋 回答

LayIM,這個(gè)是基于這個(gè)第三方的插件頁(yè)面的接入案例,應(yīng)該能給點(diǎn)靈感

熟稔 回答

在CI服務(wù)器上預(yù)裝好nodejs就完事了,我就是這么解決的。Jenkins構(gòu)建依賴非常重,并不適合跑在docker容器中。我以前這么干過(guò),發(fā)現(xiàn)并不是最佳實(shí)踐,就放棄了。

Docker最適合的場(chǎng)景是依賴輕,獨(dú)立運(yùn)行的微服務(wù),像Hadoop,Jenkins這一類依賴本身非常重的應(yīng)用,用Docker運(yùn)行反而很麻煩

薄荷糖 回答

for 循環(huán)內(nèi)再加 for 循環(huán)的時(shí)候,運(yùn)行過(guò)程簡(jiǎn)而言之就是外層for循環(huán)每運(yùn)行一次,內(nèi)層循環(huán)會(huì)全部循環(huán)一次,三層for循環(huán)和四層for循環(huán)都是 這種運(yùn)行過(guò)程,不過(guò)層數(shù)變多了而已,從最內(nèi)層開始看就行

for i in range(1,10):   # 每循環(huán)一次,第二個(gè)for循環(huán)都會(huì)被完整的循環(huán)一遍  例如當(dāng)這里是8時(shí)
    for j in range(1,i+1):  # 上面為8 這里范圍為 1,2,3,4,5,6,7,8(值取不到9)
        print('%s*%s=%s'%(i,j,i*j),end = ' ')  # 內(nèi)層for循環(huán)打印
    print('')  # 內(nèi)層for循環(huán)結(jié)束,執(zhí)行換行,下面沒(méi)有代碼了,回到外層的for循環(huán),獲取下一個(gè)值9
孤巷 回答

less和css要分開配置,不要合在一起配置

汐顏 回答

我改為view.layer.transform = CATransform3DMakeRotation(angle, 0, 0, 1)去測(cè)試,發(fā)現(xiàn)只有相對(duì)于z軸旋轉(zhuǎn)時(shí)有問(wèn)題,看起來(lái)不像是繞z軸旋轉(zhuǎn)

如果使用動(dòng)畫的方式來(lái)進(jìn)行旋轉(zhuǎn)就沒(méi)有問(wèn)題!!

CABasicAnimation *circleAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
view.duration = 0;
view.repeatCount = 1;
view.toValue = @(angle);
view.removedOnCompletion = NO;
view.fillMode = kCAFillModeForwards;
[view.layer addAnimation:circleAnimation forKey:@"rotation"];

原因是使用CATransform3DMakeRotation后修改了坐標(biāo)系,那么接下來(lái)是不能夠在此設(shè)置其所在視圖的frame的。這里我多次設(shè)置了其frame所以導(dǎo)致該問(wèn)題

用定位要注意定位父級(jí)

<view class='imgbox'>
  <image class='ico' mode='scaleToFill' src='{{ico}}></image>
    <text class="txt">{{text}}</text>
</view>
.imgbox{
  position: relative;
  width: 600rpx;
  height: 400rpx;
}
.ico{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.txt{
   position: relative;
}

蟲児飛 回答

upload中有個(gè)before-remove --------------刪除文件之前的鉤子,參數(shù)為上傳的文件和文件列表,若返回 false 或者返回 Promise 且被 reject,則停止刪除。文檔寫的。
在before-remove里進(jìn)行彈出確認(rèn)

糖果果 回答

history
history.pushState , history.replaceState修改歷史記錄
history.popstate監(jiān)聽歷史記錄

莫小染 回答

1.拿到原型跟設(shè)計(jì)圖之后,先分析整體代碼會(huì)用到哪些技術(shù),心里要有一個(gè)大致的方向,
大致的框架要有一個(gè)雛形

2.細(xì)分功能,一個(gè)頁(yè)面 -> 一個(gè)小組件 哪些組件可以以哪種方式共享,哪些代碼一看就是公共代碼

3.一邊做一邊重構(gòu),這個(gè)是大框架上的重構(gòu),盡量不要有太多冗余代碼

4.功能做好了之后,需要繼續(xù)重構(gòu)代碼。找人檢視代碼之前,盡量精煉自己的代碼。
一般檢視之后,不同的人有不同的考量視角,根據(jù)領(lǐng)導(dǎo)提出的意見再繼續(xù)重構(gòu),最后提交代碼

5.代碼其實(shí)是一直在重構(gòu)的,只要保證不出問(wèn)題,自己的代碼就要一直思考擴(kuò)展性以及性能等方面是否還有
提升空間

6.如果是多人合作,開會(huì)的時(shí)候多溝通,相同的功能模塊一個(gè)人開發(fā)就好了,跳過(guò)某一步繼續(xù)開發(fā)。
等公共模塊開發(fā)完了再聯(lián)調(diào)就行。

巴扎嘿 回答

$sql_insert = "insert into tabs(name,singer) values ('$name','$singer')";去掉單引號(hào)

兩種模式不要混用
改為

$num = $conn->num_rows;
舊酒館 回答

// 假設(shè) hello.a 在當(dāng)前文件夾,其他程序叫 main.go

go tool compile -I . main.go
go tool link -o main -L . main.o
淚染裳 回答

@陽(yáng)光的味道 和 @好好大東 方法有用,解決了我的問(wèn)題!感謝!特意登陸點(diǎn)贊!

艷骨 回答

1.你這個(gè)模擬只是模擬UA,并不是真正的模擬固件
2.要真正的模擬固件可以裝xcode,安裝不同的模擬器,對(duì)于Android也可以安裝模擬器,最好還是有真機(jī)測(cè)試

萢萢糖 回答

arr1 = arr.filter((elem,index)=> elem.sort != 4)
arr2 = arr.filter((elem,index)=> elem.sort == 4)

孤巷 回答

瀑布流的源碼很多,為什么一定要vue的呢?原理都是一樣的。而且你應(yīng)該先搜索,自己動(dòng)手找尋答案,能google的就別來(lái)問(wèn)了