在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答
硬扛 回答

全局添加樣式

::-webkit-scrollbar{
    display:none;
    }

目前用這種方式可以解決滾動條的問題

命多硬 回答

猜測1: 你是不是設(shè)置 mapping 的時候, 對該對象數(shù)組采用了 object 類型的索引, 這應(yīng)該就是應(yīng)對嵌套文檔的默認(rèn)策略. 如果使用的是 object 類型的索引, 那么對象數(shù)組會被拍平. 參見如下三篇官方文檔:

內(nèi)部對象數(shù)組
嵌套對象
嵌套對象映射

猜測2: 是不是你的一部分文檔沒有 operation.operation_id 這個字段, 導(dǎo)致結(jié)果不準(zhǔn)確. 這時可以對該字段設(shè)置默認(rèn)值. 官方文檔: missing value

猜測3: 是不是 operation.operation_id 這個字段在所有文檔中有多種類型. 比如最開始存了 int, 后來存了 string. 我反正常干這事, 因?yàn)槲业纳嫌螖?shù)據(jù)源是日志, 日志里的字段更改是常事. 我的做法是, 只查更改后的那部分索引, 因?yàn)? mapping 更改規(guī)則生效是在新索引建立, 比如3月1日改 mapping, 那么 index-2018-03-02 這個索引規(guī)則才會生效, 此時如果跨索引查詢, 比如查詢整個3月, 則會出問題. 此時可以查詢3月2日至3月31日.

淺時光 回答

直接用npm安裝依賴包就行了,安裝好之后不用配置,自動會編譯

npm i sass-loader -D / npm i node-sass -D
參考: https://github.com/Meituan-Dianping/mpvue/issues/232

笨笨噠 回答

在switch(expression)中,expression只能是一個整數(shù)表達(dá)式或者枚舉常量,整數(shù)表達(dá)式可以是int類型或Integer包裝類型。由于,byte,short,char都可以隱式轉(zhuǎn)換為int類型,所以,這些類型也可以用作表達(dá)式。
你可以把兩個值存在一個新數(shù)組里,也就是枚舉常量,判斷第一個常量的case后面不寫break,程序會繼續(xù)執(zhí)行,如果你兩個值都有case滿足,則兩個case都能執(zhí)行的到。不知道是不是滿足你的要求~

生性 回答

原理說明

Converter<String, Date> 接口必然有一個sourceType和targetType,這里就是StringDate,然后這兩個類型組成一個key,邏輯上可以認(rèn)為類似String_Date,而對應(yīng)的value就是你自定義的converter。因此只要是從String轉(zhuǎn)換為Date的變量,都會用這個converter進(jìn)行轉(zhuǎn)換。

源碼

GenericConversionService.getConverter方法中:

    protected GenericConverter getConverter(TypeDescriptor sourceType, TypeDescriptor targetType) {
        ConverterCacheKey key = new ConverterCacheKey(sourceType, targetType);
        GenericConverter converter = this.converterCache.get(key);
        if (converter != null) {
            return (converter != NO_MATCH ? converter : null);
        }

        converter = this.converters.find(sourceType, targetType);
        if (converter == null) {
            converter = getDefaultConverter(sourceType, targetType);
        }

        if (converter != null) {
            this.converterCache.put(key, converter);
            return converter;
        }

        this.converterCache.put(key, NO_MATCH);
        return null;
    }

問題答題

傳輸過來的不都是string類型的么,那么轉(zhuǎn)換器會將每個字段都轉(zhuǎn)換一遍么

前半句沒錯,后半句稍加修改:轉(zhuǎn)換器會將所有Date類型的字段都轉(zhuǎn)換一遍

拓展

其實(shí)前端變量轉(zhuǎn)換并不一定是通過converter的方式,還有兩種方式推薦:

  • 使用@DateTimeFormat注解
public class Person {
    private String name;
    private Integer age;
    @DateTimeFormat(pattern = "yyyyMMdd")
    private Date birthDay;
    private Float salary;
    private Integer version;
}
  • 使用PropertyEditor
public class DemoController {

    @InitBinder
    public void intDate(WebDataBinder dataBinder) {
        dataBinder.addCustomFormatter(new DateFormatter("yyyyMMdd"));
    }
    
    ....

}

這種方式也可以指定轉(zhuǎn)換只應(yīng)用到某個指定field

維她命 回答

循環(huán)中做一個判斷 如果大于6 讓循環(huán)的key初始化

microtask queue里有兩個 Promise 回調(diào),都跑完了才能走下一個macrotask queue

夢一場 回答

目測使用了 css module, 需要切換到全局 scope.

:global([v-cloak]) {
  display: none;
}
抱緊我 回答

找到問題了,是因?yàn)橐韵聦戝e了

    public registerOnChange(fn:any){
        console.log(fn);
        this.propagateChange(fn);
    }

改為:

public registerOnChange(fn:any){
        console.log(fn);
        this.propagateChange=fn;
    }
離魂曲 回答

你那是native應(yīng)用,調(diào)用windows api的,網(wǎng)頁實(shí)現(xiàn)不了
你開個網(wǎng)頁微信試試看就知道了

幼梔 回答

遇到了同樣的問題,請問你解決了嗎?

1:封裝的時候你可以將定時器id作為返回值的一部分,然后通過clearInterval清除
2:封裝里面加上清除的操作的方法

乞許 回答

“帶參數(shù)的裝飾器”,這樣的描述并不準(zhǔn)確,@desc(arg) 更好的理解是函數(shù) desc 被調(diào)用,該函數(shù)返回一個裝飾器。況且你已經(jīng)知道處理方法了,只是想要知道為什么。這點(diǎn)上是一點(diǎn)就通的。

先理解一個,函數(shù)允許重新賦值的

def f():
    pass
f = 1
print(f)    # 1   

然后你對裝飾器的理解也已經(jīng)很充分了:

@log(i, j, k)
    def f():

# 等價于
tmp = log(i,j,k)
@tmp
def f():

這里的原因在于,你把 log 重新賦值了,它變成了一個裝飾器,而不是一個返回裝飾器的函數(shù)。嗯,原因就是這么簡單。

慢半拍 回答

你的擴(kuò)展在頁面內(nèi)提供一個全局變量就好了.

window.__myExtension  = {
    openView() {
        // do something
    }
}

點(diǎn)擊 btn 的時候只需要調(diào)用 __myExtension.openView()

清夢 回答

1.直接用position:sticky
2.監(jiān)聽滾動,在滾動到某個位置時,設(shè)置position為fixed或者absolute

故人嘆 回答

用<xmp></xmp>把標(biāo)簽包起來。不知道是不是你想要的結(jié)果。

怣痛 回答

已經(jīng)自己寫了一個解析方法

/**
 * 解析字符串為 Date 對象
 * @param dateStr 日期字符串
 * @param fmt 日期字符串的格式
 * 目前僅支持使用 y(年),M(月),d(日),h(時),m(分),s(秒),S(毫秒)
 */
Date.of = function (dateStr, fmt) {
    if (!dateStr) {
        throw new Error('傳入的日期字符串不能為空!');
    }
    if (!fmt) {
        throw new Error('傳入的日期字符串的自定義格式不能為空!');
    }

    /**
     * 日期格式化對象
     * @param name 日期格式的名稱
     * @param format 日期的格式值
     * @param value 格式化得到的值
     * @constructor
     */
    function DateFormat(name, format, value, index) {
        this.name = name;
        this.format = format;
        this.value = value;
        this.index = index;
    }

    //日期時間的正則表達(dá)式
    const dateFormats = {
        year: 'y{1,4}',
        month: 'M{1,2}',
        day: 'd{1,2}',
        hour: 'h{1,2}',
        minute: 'm{1,2}',
        second: 's{1,2}',
        milliSecond: 'S{1,3}'
    };
    //如果沒有格式化某項(xiàng)的話則設(shè)置為默認(rèn)時間
    const defaultDateValues = {
        year: '2001',
        month: '01',
        day: '01',
        hour: '00',
        minute: '00',
        second: '00',
        milliSecond: '000'
    };
    //保存對傳入的日期字符串進(jìn)行格式化的全部信息數(shù)組列表
    const dateUnits = [];
    for (const fmtName in dateFormats) {
        const regExp = new RegExp(dateFormats[fmtName]);
        if (regExp.test(fmt)) {
            const matchStr = regExp.exec(fmt)[0];
            const regexStr = String.fill('`', matchStr.length);
            const index = fmt.indexOf(matchStr);
            fmt = fmt.replaceAll(matchStr, regexStr);
            dateUnits.push(new DateFormat(fmtName, String.fill('\\d', matchStr.length), null, index));
        } else {
            dateUnits.push(new DateFormat(fmtName, null, defaultDateValues[fmtName], -1));
        }
    }
    //進(jìn)行驗(yàn)證是否真的是符合傳入格式的字符串
    fmt = fmt.replaceAll('`', '\d');
    if (!new RegExp(fmt).test(dateStr)) {
        return null;
    }
    //進(jìn)行一次排序, 依次對字符串進(jìn)行截取
    dateUnits.sort(function (a, b) {
        return a.index - b.index;
    });
    for (var i = 0, length = dateUnits.length; i < length; i++) {
        const format = dateUnits[i].format;
        if (format == null) {
            continue;
        }
        const matchDateUnit = new RegExp(format).exec(dateStr);
        if (matchDateUnit !== null && matchDateUnit.length > 0) {
            dateStr = dateStr.replace(matchDateUnit[0], '');
            dateUnits[i].value = matchDateUnit[0];
        }
    }
    //將截取完成的信息封裝成對象并格式化標(biāo)準(zhǔn)的日期字符串
    const obj = dateUnits.toObject(function (item) {
        return {
            key: item.name,
            value: item.value
        };
    });
    const date = '{year}-{month}-{day} {hour}:{minute}:{second}:{milliSecond}'.format(obj);
    try {
        return new Date(date);
    } catch (e) {
        return null;
    }
};

//下面是上面的 Date.of() 使用的一些輔助方法

/**
 * 替換所有匹配exp的字符串為指定字符串
 * @param exp 被替換部分的正則
 * @param newStr 替換成的字符串
 */
String.prototype.replaceAll = function (exp, newStr) {
    return this.replace(new RegExp(exp, "gm"), newStr);
};

/**
 * 原型:字符串格式化
 * @param args 格式化參數(shù)值
 */
String.prototype.format = function (args) {
    var result = this;
    if (arguments.length < 1) {
        return result;
    }

    var data = arguments; // 如果模板參數(shù)是數(shù)組
    if (arguments.length === 1 && typeof (args) === "object") {
        // 如果模板參數(shù)是對象
        data = args;
    }
    for (var key in data) {
        var value = data[key];
        if (undefined !== value) {
            result = result.replaceAll("\\{" + key + "\\}", value);
        }
    }
    return result;
};

/**
 * 為 js 的 String 添加填充字符串的靜態(tài)方法
 * @param item 填充的元素
 * @param length 填充的長度
 * @returns {string} 填充得到的字符串
 */
String.fill = function (item, length) {
    var result = '';
    for (var i = 0; i < length; i++) {
        result += item;
    }
    return result;
};

/**
 * js 數(shù)組轉(zhuǎn)換為一個 Object 對象
 * @param fn 轉(zhuǎn)換方法
 * @returns {{}} 得到的 Object 對象
 */
Array.prototype.toObject = function (fn) {
    const obj = {};
    this.map(fn)
        .forEach(function (item) {
            obj[item.key] = item.value;
        });
    return obj;
};

嗯,順便也發(fā)了一篇 blog 呢
https://rxliuli.blogspot.com/...

神曲 回答

https://github.com/Microsoft/... issue 鏈接,暫時沒有找到解決方案。我把自定義的樣式注釋掉了。