history.go(-1)?
先把你那個結構解析成一個數組,然后遍歷這個數組生成html
var arr = [];
var i = 0;
$.each($('.content'),function(index,el){
if($(el).find('h1')[0]){
arr.push({
title:$(el).find('h1').text(),
list:[{title:$(el).find('i').text()}]
});
i++;
}else{
arr[i-1].list.push({
title:$(el).find('i').text(),
})
}
})
console.log(arr);
var list = '';
$.each(arr,function(index){
var title = '<div class="title">'+arr[index].title+'</div>';
var li = '';
$.each(arr[index].list,function(index2){
li += '<li>'+arr[index].list[index2].title+'</li>'
})
var ul = '<ul>'+li+'</ul>'
list += title + ul;
});
$(".list").append(list);你直接:
hashHistory.push('/chat')
就行了
出這個錯的原因是,<Router> 組件的后代里頭才有可能有 this.props.history,
而你的 App 是在 <Router> 外面的所以沒有 this.props.history,也就是 this.props.history 是 undefined,所以報錯:
無法在 undefined 上找到 push 屬性
希望對你有幫助
看過了就是HEADER文件找不到的問題,處理后則可以成功編譯安裝生成 mongodb.so 模塊文件, 不過也有一個更新簡單的方法, 不使用 pecl 和 phpize 安裝 mongodb 擴展, 那就是使用 brew install phpVS-mongodb 來安裝, phpVS 則是具體版本號, 安裝擴展后通過 brew 重啟 php 即可生效!這種方式也方便管理擴展,通過 brew 安裝的擴展會在 /usr/local/etc/php/7.1/conf.d/ 目錄下生成對應的擴展配置文件如 ext-mongodb.ini, 重啟 php 則會加載 conf.d 目錄的配置文件。謝了,老鐵!
摘抄三點ant design的文檔:
3.validateFields 校驗并獲取一組輸入域的值與 Error,若 fieldNames 參數為空,則校驗全部組件 Function([fieldNames: string[]], options: object, callback: Function(errors, values))
validateFieldsAndScroll 與 validateFields 相似,但校驗完后,如果校驗不通過的菜單域不在可見范圍內,則自動滾動進可見范圍 參考 validateFields
https://webpack.js.org/guides...
https://doc.webpack-china.org...
你從哪看的文檔? 這中英文檔里都表示需要使用 webpack.HotModuleReplacementPlugin 這個插件啊? 沒有提到要在 devServer 里加 inline: true啊,
你也可能參考我的配置: https://github.com/shrekuu/tr...
onresize是監(jiān)聽屏幕大小才變化吧,你是切換路由后就馬上發(fā)生變化的嘛
假設菊花的寬度是100px,那么它的左邊距應為:this.$getConfig().env.deviceWidth /2.0 - 50,也就是減去寬度的一半,到頂部的距離也是如此,減去高度的一半。
其實這個問題,很簡單,分析一下就知道了。分析如下:
var str = "我是/@小王@\\和/@小李@\\的好朋友"
你要轉成
var arr = [{"text": "我是"}, {"name": 小王"}, {"text": "和"}, {"name": "小李"}, {"text": "的好朋友"}]
以我看來就是,通過/@和@\把字符串分割,并且以/@結尾的放到text屬性中,以@\結尾的放到name中,并且保持原有順序。
既然是有兩個分割字符,那么我們就分割兩次。我簡單寫了一下,但是沒有做太多檢驗和判斷?;仡^你對參數做下校驗。
我的代碼如下:
var str = "我是/@小王@\\和/@小李@\\的好朋友";
var strs = str.split("/@");
var arr = new Array();
for (var i = 0 ;i < strs.length;i++)
{
if(strs[i].indexOf('@\\') != -1)
{
var temps = strs[i].split('@\\');
for(var j=0;j<temps.length;j++)
{
if(j == temps.length -1)
{
var text =
{
text:temps[j]
}
}else
{
var name =
{
name:temps[j]
}
}
}
}else
{
var text =
{
text:strs[i]
}
}
if(name != null && '' != name && 'undifined' != name)
{
arr.push(name);
}
if(text != null && '' != text && 'undifined' != text)
{
arr.push(text);
}
}
console.log(arr);
那么,最后控制臺輸入如下:
如果沒問題,請采納,謝謝。
仔細找一下路徑吧 寫一個絕對路徑
clientWidth * devicePixelRatio可得,像iphone現(xiàn)在的devicePixelRatio已經到3了。
如果你是做移動設備的響應式處理,用rem,基準js摳阿里的??梢钥聪逻@個https://www.w3cplus.com/mobil...
不是,假如你要傳遞的是字符串(雙引號里面的內容),就不加冒號
1.刷新頁面看會不會好
2.可以嘗試把node_modules文件夾刪除之后使用cnpm install或npm install重新下載依賴
之前我也做了個聊天的,說下我的解決方式,我在messagbox下面放了一個空的div,id假設為bottom每次新消息到達的時候,執(zhí)行
document.getElementByID('bottom').scrollIntoView()就可以了
你的getRechargeOrder ()里面又沒有返回值 當然是undefined啊,正確的做法是getRechargeOrder ()返回一個Promise,得到數據后觸發(fā)resolve
getRechargeOrder() {
return new Promise((resolve, reject) => {
let apiUrl = this.$api.URL.rechargeOrder
this.$api.axiosGet(apiUrl, para).then(res => {
if (res.data.code === 0) {
let data = res.data.data
if (data.payNum) {
console.log(data)//{payTotal: 3344, payNum: 86, payPeopleNum: 65, list: Array(86)}
resolve(data);
}
}
}).catch(error => {
reject(error)
})
})
}可以根據源碼看出來
其中有一個循環(huán),遍歷了所有的小球,在循環(huán)的開始處,根據小球的速度,來為他進行一段偏移。
根據如下截圖,其作用是,在每一個循環(huán)里,對這個小球和其他所有小球做一個碰撞校驗,如果兩個小球發(fā)生重疊,則交換這兩個小球的速度(可以看出來這個程序實現(xiàn)的不是彈性碰撞,而是簡單的交換速度)。
但是呢,這個循環(huán)是對所有小球發(fā)生的,也就是說,如果兩個小球不重疊,那么沒關系,其中先遍歷到的小球會把兩一個小球向相反的方向修改速度,然后下一個小球被循環(huán)到的時候,兩個小球就會遠離,由于速度是一樣的,因此會修正到碰撞前的距離,不會第二次觸發(fā)這個修改。
但是,如果兩個小球一開始就有大量重疊,那么第一次修改完以后,遍歷到第二個小球時,其速度依然不足以使其離開第一個小球,于是又觸發(fā)了第二次速度交換。然后他們倆又回到了之前的速度(相當于碰撞檢測失效了)
這個同時也解釋為什么他們的運動軌跡一樣。
上面的說法稍微有點繞,我整理一下。
他們的運動位移是由循環(huán)時處理的,其流程是:
好幾天沒人回答,職能用最笨的辦法,既然一定要報錯,那就在catch里返回登錄界面好了
if (PWD.equals(pw)) {
response.sendRedirect(request.getContextPath()+"/Main.jsp?user_id="+id+"&user_name="+na+"&user_c="+competence);
}else{
response.sendRedirect(request.getContextPath()+"/Login.jsp?error=PasswordError");
}
session.close();
} catch (Exception e) {
response.sendRedirect(request.getContextPath()+"/Login.jsp?error=IdError");
}疑似是Chrome自動檢查HTTPS并跳轉的,你可以按百度的流程關閉一下,如果不再跳轉,說明是Chrome的問題。
你可以嘗試一下在訪問的時候js強制window.location.href="http://..." ?
當然,最好的解決辦法是后端也用HTTPS
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數據專業(yè)的國家
達內教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構,是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學校辦產業(yè)為響應國家深化產教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復興的升級產業(yè)鏈。利用北京大學優(yōu)質教育資源及背
博為峰,中國職業(yè)人才培訓領域的先行者
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經理從事移動互聯(lián)網管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經理職務負責iOS教學及管理工作。
浪潮集團項目經理。精通Java與.NET 技術, 熟練的跨平臺面向對象開發(fā)經驗,技術功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網頁制作和網頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經驗。曾經歷任德國Software AG 技術顧問,美國Dachieve 系統(tǒng)架構師,美國AngelEngineers Inc. 系統(tǒng)架構師。