getTime() 篩選后臺(tái)數(shù)據(jù)在選擇時(shí)間區(qū)間的
你的css肯定是放你自己的網(wǎng)站里的吧,你的域名你自己是知道的吧,不知道就用location.hostname獲取,然后加上你自己的路徑不就行了嗎
剛剛看了rc-table上的關(guān)于components的使用方法,https://github.com/react-comp... 修改了我的自定義的components實(shí)現(xiàn),可以用了
const MyTable = (props) => <table {...props}></table>;
const HeaderWrapper = (props) => <thead {...props}></thead>;
const HeaderRow = (props) => <tr {...props}></tr>;
const HeaderCell = (props) => <th {...props}></th>;
const BodyWrapper = (props) => <tbody {...props}></tbody>;
const BodyRow = (props) => <tr {...props}></tr>;
const BodyCell = (props) => <td {...props}></td>;
自定義組件上需要傳入props,最開(kāi)始我全部元素用的是div,沒(méi)有樣式,全部錯(cuò)亂的,換成對(duì)應(yīng)table相應(yīng)的元素,基本表格沒(méi)問(wèn)題了,其他的還沒(méi)測(cè)試,有這個(gè)接口開(kāi)來(lái)我們可以對(duì)table為所欲為了
你解決了嘛 我也遇到了
有可能是服務(wù)器做了反爬蟲(chóng)判斷,就是如果檢測(cè)出訪問(wèn)頻繁再加上一些特性,判斷出是爬蟲(chóng)爬取就返回500錯(cuò)誤頁(yè)面 curl_getinfo
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); :on-select-change 點(diǎn)擊樹(shù)節(jié)點(diǎn)時(shí)觸發(fā) 當(dāng)前已選中的節(jié)點(diǎn)數(shù)組
on-select-change="handleSelect"
methods:{
handleSelect(selectedList){
var ele = selectedList[selectedList.length-1] //當(dāng)前選中的樹(shù)節(jié)點(diǎn)
ele.expand = true //設(shè)置為展開(kāi)
}
}在正常執(zhí)行的時(shí)候,el這個(gè)東西是findNode的參數(shù),是當(dāng)前傳遞過(guò)來(lái)的元素
這個(gè)函數(shù)的意義在于,判斷當(dāng)前是否是div1了,如果不是,就去遞歸自己判斷自己的父元素,
如果改成el的話,這個(gè)函數(shù)就永遠(yuǎn)遞歸判斷自己了。
遞歸也是要有方向和結(jié)束條件的。
"超過(guò)最大調(diào)用堆棧大小"實(shí)際上就是函數(shù)發(fā)生無(wú)限遞歸了。因?yàn)檫f歸過(guò)程中參數(shù)沒(méi)有改變
http://www.dexy.it/
The Most Powerful, Flexible Documentation Tool Ever.
什么叫轉(zhuǎn)成ES5語(yǔ)法, 這種是API, 不是寫(xiě)法, 也不是語(yǔ)法. babel-polyfill 是用在這些API的兼容上的. 直接添加在原型里了,平常該怎么用就怎么用, 不用考慮兼容性.
const fn = () => {} 轉(zhuǎn)成 var fn = function(){} 這叫轉(zhuǎn)成語(yǔ)法.
這些都是 ES6 中 解構(gòu) 和 拓展運(yùn)算符(...) 的一些知識(shí),看我寫(xiě)的這個(gè)小栗子就知道什么作用了。
關(guān)于結(jié)構(gòu)可以去學(xué)習(xí)一下,自己谷歌搜索一下 ES6 的解構(gòu) 和 拓展運(yùn)算符,一堆教程。
擴(kuò)展運(yùn)算符( spread )是三個(gè)點(diǎn)(...)。它好比 rest 參數(shù)的逆運(yùn)算,將一個(gè)數(shù)組轉(zhuǎn)為用逗號(hào)分隔的參數(shù)序列。
console.log(...[1, 2, 3])
// 1 2 3
console.log(1, ...[2, 3, 4], 5)
// 1 2 3 4 5
[...document.querySelectorAll('div')]
// [<div>, <div>, <div>]
拓展運(yùn)算符(...) 用于操作數(shù)組,有兩種層面
第一個(gè)叫做 展開(kāi)運(yùn)算符(spread operator),作用是和字面意思一樣,就是把東西展開(kāi)??梢杂迷?array 和 object 上都行。
比如:
let a = [1,2,3];
let b = [0, ...a, 4]; // [0,1,2,3,4]
let obj = { a: 1, b: 2 };
let obj2 = { ...obj, c: 3 }; // { a:1, b:2, c:3 }
let obj3 = { ...obj, a: 3 }; // { a:3, b:2 }
第二個(gè),第三個(gè)叫做 剩余操作符(rest operator),是解構(gòu)的一種,意思就是把剩余的東西放到一個(gè)array里面賦值給它。一般只針對(duì)array的解構(gòu),其他的沒(méi)見(jiàn)過(guò)。。。
比如:
let a = [1,2,3];
let [b, ...c] = a;
b; // 1
c; // [2,3]
// 也可以
let a = [1,2,3];
let [b, ...[c,d,e]] = a;
b; // 1
c; // 2
d; // 3
e; // undefined
// 也可以
function test(a, ...rest){
console.log(a); // 1
console.log(rest); // [2,3]
}
test(1,2,3)
還有類(lèi)似的
let array = [1, 2, 3, 4, 5];
const { x, y, ...z } = array;
// 其中z=[3, 4, 5],注意如果由于array的length不足以完成析構(gòu),則會(huì)導(dǎo)致z為[]
對(duì)象:
let obj = { name: 'zhangsan', age: 30, city: 'shenzhen' };
const {name, ...others} = obj;
console.log(name); // 'zhangsan'
console.log(others); // {age: 30, city: 'shenzhen'}
Object.keys 和 Object.values 顯而易見(jiàn)一個(gè)獲取對(duì)象的 key 值,一個(gè)獲取對(duì)象的 value 值,返回的都是數(shù)組。
關(guān)于數(shù)組的 every 用法,其實(shí)也很簡(jiǎn)單。
對(duì)數(shù)組中的每個(gè)元素都執(zhí)行一次指定的函數(shù)(callback),直到此函數(shù)返回 false,如果發(fā)現(xiàn)這個(gè)元素,every 將返回 false,如果回調(diào)函數(shù)對(duì)每個(gè)元素執(zhí)行后都返回 true ,every 將返回 true。它只對(duì)數(shù)組中的非空元素執(zhí)行指定的函數(shù),沒(méi)有賦值或者已經(jīng)刪除的元素將被忽略
//測(cè)試是否所有數(shù)組元素都大于等于10:
function isBigEnough(element, index, array) {
return (element >= 10);
}
var passed = [12, 5, 8, 130, 44].every(isBigEnough);
// passed is false
passed = [12, 54, 18, 130, 44].every(isBigEnough);
// passed is true
//結(jié)果:
//[12, 5, 8, 130, 44].every(isBigEnough) 返回 : false
//[12, 54, 18, 130, 44].every(isBigEnough) 返回 : true
小伙子基礎(chǔ)要學(xué)好啊,這些都是語(yǔ)法基礎(chǔ)
IE不一定有blob / createObjectURL這些東西??梢匀aniuse查一下
https://github.com/GoogleChro...
google官方出的headless Chrome了解一下
var a = {v: 1}
這一步假設(shè)分布了內(nèi)存0x001給a,此時(shí)a => 0x001, 0x001存放了{(lán)v: 1}(簡(jiǎn)單理解成這樣)var b = a
這一步相當(dāng)于b => 0x001
也就是說(shuō)b = {v: 1},因?yàn)閎地址也指向0x001b.v = 2
這一步的時(shí)候,0x001中的v = 2
b => 0x001 => .v => 2
a => 0x001 => .v => 2
所以 a.v == b.v // true
這些都是因?yàn)橹羶蓚€(gè)變量指向了同一個(gè)地址
使兩個(gè)變量的指向?yàn)椴煌牡刂?/p>
var b = JSON.parse(JSON.stringify(a))
var b = Object.assign({}, a);
把chrome插件關(guān)了
chat.name
chat中有name屬性?
在標(biāo)簽上設(shè)置一個(gè)ID屬性:
<div id="step1">
...
</div>
在a標(biāo)簽的鏈接上加上#step1:
<a >跳轉(zhuǎn)到聊天室的step1處</a>
點(diǎn)擊鏈接, 就會(huì)跳轉(zhuǎn)到聊天頁(yè)面, 并且自動(dòng)滾動(dòng)到step1處了
試了一下,除了最后少了個(gè)‘}’就沒(méi)啥毛病了,或者說(shuō)你沒(méi)post一個(gè)‘username’到后端導(dǎo)致Undefined index?
把你對(duì)應(yīng)的canvas坐標(biāo)系放大
你做的transform操作對(duì)應(yīng)的都轉(zhuǎn)換到坐標(biāo)系的轉(zhuǎn)化上
北大青鳥(niǎo)APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國(guó)IT技能型緊缺人才,是大數(shù)據(jù)專(zhuān)業(yè)的國(guó)家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國(guó)一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國(guó)成功上市,融資1
北大課工場(chǎng)是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國(guó)家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國(guó)制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級(jí)產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國(guó)職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開(kāi)發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_(kāi)發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫(kù),具有快速界面開(kāi)發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁(yè)制作和網(wǎng)頁(yè)游戲開(kāi)發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開(kāi)發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國(guó)Software AG 技術(shù)顧問(wèn),美國(guó)Dachieve 系統(tǒng)架構(gòu)師,美國(guó)AngelEngineers Inc. 系統(tǒng)架構(gòu)師。