拼寫錯了
exports.create = ...最后用的是sqlsrv自帶的HASHBYTES('SHA1',$str) ,然后插入。
lz今天再次調(diào)試的時候, 因為開始出現(xiàn)了一個Servlet沒有找到, 就順手clean了下Tomcat和項目的緩存, 然后再次調(diào)試, 居然詭異般的好了...
哎 , 無心插柳柳成蔭, 里面的機制太讓人費解了.
原因:reader.onload = function() {} 并不是阻塞的,在讀取完成之前就繼續(xù)往下走了,到this.imgLists.push(newImg);這一行的時候newImg還是空的。你setTimeout其實是在賭讀取完成需要多久,如果秒讀就能工作,否則不能,所以你實驗幾次結(jié)果不同。
解決:
把下面一串都放到異步成功的回調(diào)里面去
addImg(e) {
let newImg = {};
let file = e.target;
let reader = new FileReader();
reader.readAsDataURL(file.files[0]);
reader.onload = () => {
newImg.data = reader.result;
if (this.imgLists.length <= 5) {
this.imgLists.push(newImg);
}
else {
this.$message({
message: '最多僅支持上傳5張圖片',
type: 'warning',
center: true,
});
}
}
}
有兩個地方存在問題:
1、第六行代碼,express.bodyParser ,bodyParser 已經(jīng)單獨分離了,你還 express. 自然就引用不到。
2、如果你的意圖是上傳文件,那么對不起,bodyParser 也沒用,你需要使用 busboy 、multiparty、formidable、multer 其中任意一種處理文件的中間件。
我不太理解你的問題,before 一次 after 一次不是正好
12
34
56
如果你想要每次 +2,應(yīng)該是:
p::before {
counter-increment:pl 2;
content: counter(pl);
}
p::after {
content: counter(pl);
}
CSS 里重復(fù)多次的結(jié)果,會把所有樣式合并到一起,所以重復(fù)兩次和只寫一次效果是一樣的。
你在用malloc申請數(shù)組空間的時候a,b還沒有賦值,他們倆的值是未定義的。你申請的數(shù)組的長度也不知道多長,所以在給數(shù)組賦值時就會越界。
解決辦法:
把給a,b賦值的兩個scanf語句放到Malloc之前。
樓上說的也不準(zhǔn)確,這還是要從AOP聯(lián)盟和規(guī)范說起,你可在spring-aop包下看到,兩塊東西,其中一塊就是aop規(guī)范的接口,Rod Johnson只是把它集成了,沒有打算重寫和修改規(guī)范的意圖,而其中除了一個Advice頂級接口和一個AdiceException剩下的主要以Interceptor結(jié)尾
spring aop其中部分通知接口繼承了Advice接口但是自己又重新定義了,例如:org.springframework.aop.BeforeAdvice
而部分則采用aop規(guī)范的接口,例如:org.aopalliance.intercept.MethodInterceptor
更新(2018-09-01):
我就再說多一點,首先不是所有通知都實現(xiàn)了MethodInterceptor(環(huán)繞通知)
前置通知:MethodBeforeAdvice、BeforeAdvice只是繼承了Advice
后置通知:AfterReturningAdvice、AfterAdvice也只是繼承了Advice
異常通知:ThrowsAdvice繼承了AfterAdvice,也是一種后置通知
引介通知:IntroductionInterceptor才是繼承了MethodInterceptor
從以上來看,命名還是很規(guī)范的,對吧,主要以advice為后綴
好了,再說Aspctj,織入是將增強添加到目標(biāo)類的具體連接點上的過程。根據(jù)不同的實現(xiàn)技術(shù),AOP有3種織入方式。
(1)編譯期織入,這要求使用特殊的Java編譯器。
(2)類裝載期織入,這要求使用特殊的類裝載器。
(3)動態(tài)代理織入,在運行期為目標(biāo)類添加增強生成子類的方式。
Spring采用動態(tài)代理織入,而AspectJ采用編譯期織入和類裝載期織入。
Spring AOP無意將Aspectj拒之門外,而是采取了兼收并蓄的方式,即繼承了Aspectj的表達式語法來定義切點和增強(你可以簡單理解為通知),所以一般要用AOP的話除了引入spring-aop.jar的包還會引用aspecj.weaver.jar(或者aspect.tools.jar,后者包含前者)來引入語法相關(guān)的工具(一些注解和接口,例如@Before),一般我們有若干方式來啟用Aspectj,但主要就是注解和配置兩種,當(dāng)然了,對應(yīng)到容器中主要還是實體類,而這些類主要以Aspectj為前綴,例如AspectJMethodBeforeAdvice和AspectJExpressionPointcutAdvisor(注意,Advisor不用于Advice)
/**
* 注解
*/
@Aspect
@Component
public class UserAdvice {
@Before("execution(* *UserByName(..))")
public void before() {
System.err.println("before...");
}
}
/**
* xml配置
*/
<aop:config>
<aop:aspect ref="**">
<aop:before pointcut="execution(* *UserByName(..))" method="**">
</aop:aspect>
</aop:config>
``nginx不做邏輯相關(guān)的業(yè)務(wù),你的需求直接用nginx無法實現(xiàn)。改用lua吧
在一段業(yè)務(wù)內(nèi),如果發(fā)生多次sql或redis操作,建議拋異常不做判斷
window.getSelection()了解一下?然后一層一層找父級?
var interval;
clearInterval(interval);
interval = setInterval(()=>{
console.log(window.getSelection(),window.getSelection().anchorNode.textContent.substring(0,window.getSelection().anchorOffset))
},500)
自己的項目 可以發(fā)布到這個網(wǎng)站呀。
npm,
搜索 發(fā)布自己的項目到npm package 等,比如構(gòu)建發(fā)布自己的npm package。
你要創(chuàng)建類似腳手架工具,可以先學(xué)習(xí)Vue-cli源碼~或者學(xué)習(xí)下Vue-cli是如何工作的。
推薦看這篇文章Vue-cli是如何工作的
猜測線上和本地用的根本不是一個數(shù)據(jù)庫
感謝樓上提供思路,我請求返回的數(shù)據(jù)是一個Blob對象,存儲的是二進制數(shù)據(jù)。
所以需要先從Blob對象中提取數(shù)據(jù),然后再用pako.inflate()方法進行解壓
具體什么是Blob對象,請看這里鏈接描述
具體代碼如下:
ws.onmessage = function(evt){
if(evt.data instanceof Blob){
let result = '';
let reader = new FileReader();
//FileReader:從Blob對象中讀取數(shù)據(jù)
reader.onload = function() {
result = JSON.parse(pako.inflate(reader.result,{to:'string'}));
//pako.inflate()對數(shù)據(jù)進行解壓,得到正常的json對象
if(result.ping){
ws.send(JSON.stringify({pong:result.ping}));
//響應(yīng)服務(wù)器,避免斷開連接
}
}
reader.readAsBinaryString(evt.data);
//將返回的數(shù)據(jù)解析為字符串格式
}
};
你的 rabbitmq 服務(wù)是不是沒有保持在后臺運行,我記得 rabbitmq-server start 然后 ctrl+c 是會退出服務(wù)的,你用 rabbitmq-server –detached 讓它在后臺運行再試試 rabbitmqctl status
估計是static惹的禍。它會一直保存每一次測試用例的結(jié)果,并不會重新開始計數(shù)。所以你直接對那個失敗的測試用例可以過,而對多個測試用例(也就是commit)過不了
跟語言沒有什么關(guān)系,真正要解決的核心是資源。
ip 池怎么搭、反爬策略熟不熟悉、HTTP 熟不熟悉、隊列、緩存...
這些都是語言無關(guān)的。
最近剛做了這個,用的vant(有贊)ui框架,里面帶圖片上傳,不過不能完全滿足上傳的需要。vant的圖片上傳更多的是對ui的封裝和提供了部分回調(diào)函數(shù),此外還需要代碼壓縮,分段上傳等。
vant 官網(wǎng)https://www.youzanyun.com/zan...
lrz圖片壓縮 https://github.com/think2011/...
原因很簡單,你要在你的攔截器里面把數(shù)據(jù) return 出來
axios.interceptors.response.use(function resolve(res) {
console.log('response')
return res
});
如果還不清楚:你可以看看我的 https://segmentfault.com/a/11...
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內(nèi)教育集團成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。