鍍金池/ 問(wèn)答
風(fēng)畔 回答

1.match2的條件 這個(gè)None是啥意思,如果是想查詢consume這個(gè)字段是否存在,可以改成

{'$match': {'consume': {$exist:true}}}

2.這種優(yōu)化,我曾經(jīng)問(wèn)過(guò)專業(yè)的大神@Mongoing中文社區(qū),我來(lái)班門弄斧一下,你這種查詢我猜測(cè)會(huì)很慢,但是慢的原因不在于match寫得有問(wèn)題,而是lookup太慢了,十分影響效率,mongodb是非關(guān)系型數(shù)據(jù)庫(kù),本身設(shè)計(jì)就不想要關(guān)系(我猜的哈),所以lookup和其它查詢關(guān)系的并不是它的強(qiáng)項(xiàng),而且你這里查詢的是消費(fèi)記錄和充值記錄,這兩個(gè)完全是可能不會(huì)更改的數(shù)據(jù),所以我建議是更改數(shù)據(jù)結(jié)構(gòu),將consume和recharge直接存放在這個(gè)user下面,然后不用lookup,直接篩選就可以了,這樣絕對(duì)會(huì)很快,當(dāng)然這前提是在業(yè)務(wù)允許的情況下,修改數(shù)據(jù)結(jié)構(gòu)。
下面貼出我大哥的回答
mongodb的關(guān)聯(lián)查詢$lookup
ps:而且我做過(guò)一個(gè)實(shí)驗(yàn),20條數(shù)據(jù)都要lookup的情況下,我查兩次數(shù)據(jù)庫(kù)(先查出lookup之前的數(shù)據(jù),再用lookup的根據(jù)(比如說(shuō)_id)去再查一次數(shù)據(jù)庫(kù),再把這兩者的結(jié)果整合成我想要的數(shù)據(jù))都比直接lookup要快。。。。

離觴 回答
但是當(dāng)我要後退 delete 刪除文字的時(shí)候(每一行), 他的高度只會(huì) 1px 的往下扣

原因:

  1. scrollHeight的高度值為 內(nèi)容區(qū) + padding,
  2. css('height')為 內(nèi)容區(qū) + padding + border

本例中從你描述的現(xiàn)象看, textarea默認(rèn) 上下border各是1px,padding是0px,即
實(shí)際上 scrollHeight一直比css('height')少2px,
當(dāng)input事件每次觸發(fā)后,css('height')被賦值為比它小的scrollHeight,就會(huì)出現(xiàn)你看到的現(xiàn)象 "後退 delete 刪除文字的時(shí)候(每一行), 他的高度只會(huì) 1px 的往下扣", 實(shí)際不是扣1px,是扣2px。

解決方案可采用 @月影 提供的。 原理是每次觸發(fā)輸入事件時(shí),先取消textarea的高度(this.style.height = 'auto'),此時(shí)會(huì)出現(xiàn)滾動(dòng)條,這么做的目的是讓scollHeight將等于文字的實(shí)際高度。 如果省掉這步,會(huì)發(fā)現(xiàn)在刪除文字時(shí),撐高的scrollHeight并不會(huì)變化。

最終將 月影 的答案改寫成下面這樣, 可避免他的方案中textarea會(huì)出現(xiàn)輕微抖動(dòng)的現(xiàn)象

var scroll_Height = $('#content').get(0).scrollHeight;
$('#content').innerHeight(scroll_Height);


$('#content').on('input', function() {
    $(this).height('auto');
    $(this).innerHeight($(this)[0].scrollHeight);
}); 
焚音 回答

例子1

Sass編譯前

$remUnit: null !default;
@media screen and (min-width: 1024px) {
  $remUnit: 102 !global;
}
@media screen and (min-width: 1920px) {
  $remUnit: 192 !global;
}

body {
  width: $remUnit;
}

編譯后

body {
  width: 192;
}

例子2

Sass編譯前

$remUnit: null !default;
body {
  @media screen and (min-width: 1024px) {
    $remUnit: 102 !global;
    width: $remUnit;
  }
  @media screen and (min-width: 1920px) {
    $remUnit: 192 !global;
    width: $remUnit;
  }
}

編譯后

@media screen and (min-width: 1024px) {
  body {
    width: 102;
  }
}
@media screen and (min-width: 1920px) {
  body {
    width: 192;
  }
}
嫑吢丕 回答

這個(gè)隊(duì)列是為了保證多個(gè)請(qǐng)求loading時(shí),全屏loading不重復(fù)觸發(fā),如果沒(méi)有這個(gè)隊(duì)列,每一個(gè)請(qǐng)求創(chuàng)建一個(gè)全局的Spin等待,會(huì)造成重復(fù)

不歸路 回答

我也想知道,我碰到一個(gè)winform程序在win7下是好的,在WindowsServer2012上就出現(xiàn)了遮擋情況。調(diào)這個(gè)字體大小沒(méi)用,還是擋住。

冷溫柔 回答

1.如樓上所述,創(chuàng)建一個(gè)保存結(jié)果狀態(tài)的數(shù)組,且假設(shè)你要循環(huán)的ajax數(shù)量為ajax_count
var result = [];
2.聲明一個(gè)ajax的回調(diào)函數(shù),該函數(shù)會(huì)根據(jù)result數(shù)組的狀態(tài)來(lái)執(zhí)行另一個(gè)函數(shù)(就是在ajax全部執(zhí)行完成后需要執(zhí)行的內(nèi)容)
function on_all_ajax_finished()
{

console.log("所有ajax執(zhí)行完畢!");

}

function ajax_callback()
{

if(result.length == ajax_count -1)
{
    on_all_ajax_finished();
}
else
{
    result.push(1);//push一個(gè)任意的內(nèi)容到數(shù)組來(lái)增加數(shù)組的長(zhǎng)度,不知道js有沒(méi)有線程安全問(wèn)題
}

}

六扇門 回答

可以裝個(gè) prettier 插件,在設(shè)置 "prettier.tabWidth": 4

懶豬 回答
create table tablename (
…… 
    `create_time` timestamp not null default current_timestamp comment '創(chuàng)建時(shí)間',
…… 
)

以前遇到過(guò)同樣的情況
如果你的sql創(chuàng)表格式?jīng)]錯(cuò)的話,
你entity類里面不要寫createtime和updatetime屬性,因?yàn)橐坏﹤鲄⑦M(jìn)去,就會(huì)更新為null

/0718中午更新
必須取到兩個(gè)時(shí)間的值并且實(shí)現(xiàn)update自動(dòng)的更新的話修改如下(已測(cè)試通過(guò))
在entity類上加注解@EntityListeners(AuditingEntityListener.class)
在兩個(gè)屬性上分別加注解
@CreatedDate @LastModifiedDate
在你的啟動(dòng)類**application上加注解@EnableJpaAuditing
--測(cè)試一下save和更新

乞許 回答

看起來(lái)前幾位是對(duì)的,然后后面幾位有問(wèn)題,估計(jì)是某些編碼要求后面補(bǔ)0,保證最后的總長(zhǎng)度是8的倍數(shù),可以往這個(gè)方向試試,不用寫代碼,直接用一些在線的轉(zhuǎn)碼工具試幾下就有了。

深記你 回答
^(?=[^_]*_?[^_]*$)[\da-zA-Z_]{2,32}$
^(?!.*_.*_)[\da-zA-Z_]{2,32}$

如果你用的語(yǔ)言,\w不匹配中文的話,可以這么寫

^(?=[^_]*_?[^_]*$)\w{2,32}$
^(?!.*_.*_)\w{2,32}$
敢試 回答

v-show當(dāng)頁(yè)面進(jìn)來(lái)時(shí)就渲染了 只不過(guò)是用css display:none屬性隱藏掉了,當(dāng)然不會(huì)刷新了。
建議你去看看 v-if和v-show的區(qū)別

何蘇葉 回答

markdown有不同的規(guī)則,可以看看vscode能不能設(shè)置github風(fēng)格的

糖豆豆 回答

首先,問(wèn)問(wèn)題貼代碼
其次,你判斷條件用的什么?file?

陌離殤 回答

jquery對(duì)象和dom對(duì)象,jquery方法和dom方法了解一下

脾氣硬 回答

在/src/main/resources/public/ 目錄下新建一個(gè) test.jsp,然后直接訪問(wèn) test.jsp。
和 js 文件不一樣,因?yàn)闉g覽器不會(huì)解析 jsp 頁(yè)面,所以只出現(xiàn)下載的頁(yè)面,沒(méi)法展示 jsp 的內(nèi)容的

糖果果 回答
<div class="info-file" ng-repeat="item in info">
    <button class="btn" ng-click="toEdit(item)" ng-show="item.editPara">編輯</button>
    <button class="btn" ng-click="add(item)" ng-hide="item.editPara">保存</button>
    <div class="form-group">
        <label class="label">姓名:</label>
        <input class="input" name="name" ng-model="item.name" ng-hide="item.editPara">
        <span class="span info-span" ng-show="item.editPara">{{item.name}}</span>
    </div>
    <div class="form-group">
        <label class="label">年齡:</label>
        <input class="input" name="age" ng-model="item.age" ng-hide="item.editPara">
        <span class="span info-span" ng-show="item.editPara">{{item.age}}</span>
    </div>
</div>

數(shù)組中的每個(gè)對(duì)象都附加上編輯標(biāo)準(zhǔn) ,再點(diǎn)擊時(shí)把item傳入函數(shù)里就能達(dá)到編輯某一個(gè)的目的

孤巷 回答

拿到history后就可以用代碼進(jìn)行跳轉(zhuǎn)了,ReactTraining/history: Manage session history with JavaScript這是history的倉(cāng)庫(kù),相關(guān)方法查看這個(gè)的文檔