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

鍍金池/ 問答
魚梓 回答

iframe 只能手動更新高度了,或者參考 https://github.com/nprapps/py...

吢涼 回答

window.devicePixelRatio獲得手機的dpr,dpr為3你就將字體放大成3倍

夢若殤 回答

pip install 0,然而并沒有0這個庫啊

你可以試試pip install requests一下

喵小咪 回答
$(".questionClass:eq(4)>input[type='text']")
紓惘 回答

這段代碼是一個單元測試,解釋大概如下:

parameters do
  {"percentage"=>1}
end

這段代碼的意思是,parameters是一個不帶參數(shù)的函數(shù),這個函數(shù)可以跟一個代碼塊,也就是do...end這部分,嵌入到函數(shù)里yield部分執(zhí)行操作,比如這里就將一個賦值操作給了parameters函數(shù)。

這個yield怎么用呢?請看下面這個例子:

# 定義函數(shù)test
def test
  puts '1'
  yield # 這里提供給代碼塊執(zhí)行
  puts '3'
end
test do
  puts '2' #代碼塊具體執(zhí)行內(nèi)容
end

然后輸出1、2、3

同理,

expect("drops the event") do |events|
  puts "-------->expect"
  events.size == 0
end

這里是一個帶參數(shù)的函數(shù),后面接了一個代碼塊,函數(shù)是expect目的是為了做一個測試的斷言,參數(shù)“drops the event”是這個斷言的描述——希望拋掉所有的events,然后函數(shù)可以在yield的時候給一個參數(shù),讓代碼塊使用yield(events),比如這里將events拿出來,代碼塊來判定這個events.size為0。

這個expect函數(shù)大概是這樣定義的:

def expect(describe)
  events = [] # 做一個操作將events清空
  result = yield(events) # 將events作為參數(shù),拿給外面的代碼塊
  if result == true
    puts '斷言成功'
  else
    puts '斷言失敗'
  end
end

你看具體使用的時候,代碼塊判定了events.size == 0,然后這個結(jié)果true在expect函數(shù)里賦值給了result,expect函數(shù)繼續(xù)往下執(zhí)行。

另外,代碼塊不止是do...end和do |unit| ... end,這里了in_event后面的{...}也是代碼塊,代碼塊的內(nèi)容是{"message"=>"bonjour bonjour","date"=>"2018-2-2"}這個哈希,另外還有種代碼塊的使用是{|unit|...}。也就是,你可以把左大括號看成do,把右大括號看成end。

希望能幫助到你。

笑浮塵 回答

document.querySelectorAll 返回的是 NodeList 對象,在低版本瀏覽器中是沒有 forEach 方法的。
你需要將 NodeList 轉(zhuǎn)換成 Array 類型再使用 forEach

[...document.querySelectorAll('*')].forEach(console.log)
青瓷 回答

這跟IDEA沒關(guān)系,用的是maven的依賴解決方案,maven將依賴分為幾個可見級別,不同級別的依賴關(guān)系對應(yīng)的打包結(jié)果不一樣。

單從打包結(jié)果來看,compile和runtime級別的依賴會打包進入jar/war,test/testCompile/provide則不會。

從編譯結(jié)果看,compile級別的依賴從編譯-打包-運行-測試都可見,runtime級別在編譯級別不可見,在運行和測試可見(比如JDBC Driver,通常使用Class.forName()反射引用,所以編譯期間不需要,運行時才需要)

test級別的幾個都好理解,只有跑自動化測試才需要(比如spock, junit, jmock等等),打產(chǎn)品包的時候不需要。

別傷我 回答

&是按位與,而&&是邏輯與。
所以應(yīng)該使用&&才對,&是錯誤的用法。

  110  // 6
& 011  // 3
---------
  010  // 2
6 & 3 = 2
6 && 3 = 3
鐧簞噯 回答

移動端才需要考慮分辨率問題。pc端自適應(yīng),可以采取%百分比、flex布局等配合著定義。

局外人 回答

你好題主,你遇到這個問題是在單頁應(yīng)用項目(前端路由)上,還是傳統(tǒng)的多頁項目(后端路由)上?

如果是前者,那么按 vuex 的響應(yīng)式原理來說,不需要做任何監(jiān)聽操作,而且它本身就是用來做狀態(tài)管理的,狀態(tài)管理本身可以儲存一部分和交互有關(guān)系的數(shù)據(jù),當(dāng)然也可以儲存所有的數(shù)據(jù)(但是沒有必要)。

如果是后者,那么按理說每個頁面的 store 是獨立的,似乎需要借助一些外部儲存方式。

離夢 回答

pattern里面是正則表達式, 寫[0-9],自然沒有小數(shù)點, 貌似要[0-9]\.才有

吢丕 回答

可以設(shè)置input text-indent屬性為負值,實現(xiàn)縮進,text-indent是input內(nèi)部文字距左邊距離,設(shè)置負值相反。通過循壞實現(xiàn)多次縮進
$("#input_text"+nn).css("text-indent","0px");

for(var i=1;i<20;i++){
    if(i==1){
        if(text.length>12&&text.length<15){
            $("#input_text"+nn).css("text-indent","-30px");
        }
    }else{
        var num=12+(i-1)*3;
        var nm=12+i*3;
        if(text.length>=num&&text.length<nm){
            $("#input_text"+nn).css("text-indent",(-30*i+6*i)+"px");
        }
    }
}
柒喵 回答

兄弟,這和webpack有半毛錢關(guān)系,你是后臺數(shù)據(jù)怎么靜態(tài)化?而且dede也不是靜態(tài)化,他只不過不是用的接口,類型jsp那種形式,就是后臺和前端耦合。我覺得你應(yīng)該這樣,把你寫好的頁面(靜態(tài)頁面)給你們后臺,然后讓他把數(shù)據(jù)放進去(不要使用ajax,axios形式)。

旖襯 回答

Vue.component(name, comp) 方式注冊組件也會出現(xiàn)這個錯誤。

我的情況略微復(fù)雜,我使用以上方式注冊了全局組件,在頁面中是通過 v-else-if 使用的,在滿足條件的時候才使用該組件,這種情況下就出現(xiàn)了該錯誤信息。

我在頁面再次注冊該組件解決的這個問題。

敢試 回答

你可以查看一下我的項目里的 config.py :https://github.com/eastossifrage/pyblog/blob/master/config.py

SQLALCHEMY_COMMIT_ON_TEARDOWN = True

這一項就是你想要的。

陌南塵 回答

我試了一下,你的配置在我這邊是沒有問題的對應(yīng)的url都可以請求到,post使用postman直接請求的,均可以請求到對應(yīng)的結(jié)果,我覺得你可是試著從其他地方找問題,shiro是沒有配置問題的。

不討囍 回答

spring mvc上傳文件的時候,你需要在spring mvc配置文件中配置org.springframework.web.multipart.commons.CommonsMultipartResolver文件上傳解析器。

1:當(dāng)一個請求過來的時候,會調(diào)用DispatcherServlet類中的doDispatch(HttpServletRequest, HttpServletResponse)方法。

doDispatch方法體

protected void doDispatch(HttpServletRequest request, HttpServletResponse response) throws Exception {
        HttpServletRequest processedRequest = request;
        HandlerExecutionChain mappedHandler = null;
        boolean multipartRequestParsed = false;

        WebAsyncManager asyncManager = WebAsyncUtils.getAsyncManager(request);

        try {
            ModelAndView mv = null;
            Exception dispatchException = null;

            try {
                processedRequest = checkMultipart(request);
                multipartRequestParsed = processedRequest != request;

                // Determine handler for the current request.
                mappedHandler = getHandler(processedRequest, false);
                if (mappedHandler == null || mappedHandler.getHandler() == null) {
                    noHandlerFound(processedRequest, response);
                    return;
                }

                // Determine handler adapter for the current request.
                HandlerAdapter ha = getHandlerAdapter(mappedHandler.getHandler());

                // Process last-modified header, if supported by the handler.
                String method = request.getMethod();
                boolean isGet = "GET".equals(method);
                if (isGet || "HEAD".equals(method)) {
                    long lastModified = ha.getLastModified(request, mappedHandler.getHandler());
                    if (logger.isDebugEnabled()) {
                        String requestUri = urlPathHelper.getRequestUri(request);
                        logger.debug("Last-Modified value for [" + requestUri + "] is: " + lastModified);
                    }
                    if (new ServletWebRequest(request, response).checkNotModified(lastModified) && isGet) {
                        return;
                    }
                }

                if (!mappedHandler.applyPreHandle(processedRequest, response)) {
                    return;
                }

                try {
                    // Actually invoke the handler.
                    mv = ha.handle(processedRequest, response, mappedHandler.getHandler());
                }
                finally {
                    if (asyncManager.isConcurrentHandlingStarted()) {
                        return;
                    }
                }

                applyDefaultViewName(request, mv);
                mappedHandler.applyPostHandle(processedRequest, response, mv);
            }
            catch (Exception ex) {
                dispatchException = ex;
            }
            processDispatchResult(processedRequest, response, mappedHandler, mv, dispatchException);
        }
        catch (Exception ex) {
            triggerAfterCompletion(processedRequest, response, mappedHandler, ex);
        }
        catch (Error err) {
            triggerAfterCompletionWithError(processedRequest, response, mappedHandler, err);
        }
        finally {
            if (asyncManager.isConcurrentHandlingStarted()) {
                // Instead of postHandle and afterCompletion
                mappedHandler.applyAfterConcurrentHandlingStarted(processedRequest, response);
                return;
            }
            // Clean up any resources used by a multipart request.
            if (multipartRequestParsed) {
                cleanupMultipart(processedRequest);
            }
        }
    }

2:在doDispatch方法體中調(diào)用checkMultipart(request)方法判斷是否是文件上傳的請求,判斷是根據(jù)Content-type來的,如果是文件上傳的請求,在checkMultipart(request)方法中就會調(diào)用在CommonsMultipartResolver中的方法進行文件解析(實際是調(diào)用apache commons-fileupload的文件長傳插件),解析完成后,其實文件已經(jīng)上傳到服務(wù)器本地磁盤了,請看下面的代碼片段。

protected HttpServletRequest checkMultipart(HttpServletRequest request) throws MultipartException {
        if (this.multipartResolver != null && this.multipartResolver.isMultipart(request)) {
            if (request instanceof MultipartHttpServletRequest) {
                logger.debug("Request is already a MultipartHttpServletRequest - if not in a forward, " +
                        "this typically results from an additional MultipartFilter in web.xml");
            }
            else {
                return this.multipartResolver.resolveMultipart(request);
            }
        }
        // If not returned before: return original request.
        return request;
    }

在checkMultipart方法體中調(diào)用了CommonsMultipartResolver類的resolveMultipart方法去解析文件,該方法返回的是MultipartHttpServletRequest對象,該對象中存有已經(jīng)上傳的服務(wù)器本地的文件對象。

3:獲取具體處理器的方法(mv = ha.handle(processedRequest, response, mappedHandler.getHandler()) 這行代碼)。
如果是文件上傳的話,processedRequest是上面的checkMultipart方法返回的對象。

實際調(diào)用的org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter類的handle方法,該方法中獲取實際被調(diào)用的方法參數(shù)上有哪些注解,然后根據(jù)注解的一些配置,從processedRequest獲取對應(yīng)的值。

比如你上面的testUpload()方法。在AnnotationMethodHandlerAdapter的handle()的方法中會獲取testUpload()的方法參數(shù)有@RequestParam這個注解,然后解析這個注解,從processedRequest請求中獲取到desc的值,獲取到名為file的文件,最后調(diào)用testUploaad()方法。具體是怎么解析的可以看看org.springframework.web.bind.annotation.support.HandlerMethodInvoker.resolveHandlerArguments(Method, Object, NativeWebRequest, ExtendedModelMap)這個方法體。

熊出沒 回答

解決了嗎我也遇到了相同的問題