cgi了解一下,只要是可執(zhí)行程序都可以
已解決datatable中已經(jīng)加載了數(shù)據(jù)
你不是存到本地?cái)?shù)據(jù)庫了么,那你在初始化state這個(gè)值得時(shí)候先看下本地?cái)?shù)據(jù)庫有沒有值,有值的話給state初始化這個(gè)數(shù)據(jù)庫的值,你看是這樣嗎?
存的話,你可以直接把state的值取出來,序列化成字符串,然后存到localStorage中,然后在刷新打開的時(shí)候初始化再從localStorage中讀取這個(gè)字符串,反序列化為對(duì)象初始化給state
better-scroll
https://github.com/ustbhuangy...
URI部分用encodeURI,參數(shù)部分用encodeURIComponent,這樣才是相對(duì)完美的編碼方式。
比如`https://example.com/?next=abc...`,得到的結(jié)果分別是:
encodeURI(`https://example.com/?next=abc...`):
"https://example.com/?next=abc.com/def&encoding=utf-8"
encodeURIComponent(`https://example.com/?next=abc...`):
"https%3A%2F%2Fexample.com%2F%3Fnext%3Dabc.com%2Fdef%26encoding%3Dutf-8"
encodeURI(https://example.com/?next=${encodeURIComponent('abc.com/def')}&encoding=${encodeURIComponent('utf-8')}):
"https://example.com/?next=abc.com%252Fdef&encoding=utf-8"
懶得改了,最后的 ` 自己腦補(bǔ)吧
1.json 是不支持 map 的,在序列化前需要將 map 轉(zhuǎn)換為 object。
2.樓上的做法稍微有點(diǎn)麻煩,將 map 轉(zhuǎn)換為 object,其實(shí)只需要 [...map] 就好了。
更為簡潔的寫法:
let knowledgeData =[]
let initialKnowledge = [
[
["id", 1],
["title", "關(guān)于float的那些事兒"],
["URL", "http://www.w3school.com.cn/cssref/pr_class_float.asp"],
["progress", 100],
["evaluation", 3],
["notes", "關(guān)于float的那些事兒關(guān)于float的那些事兒關(guān)于float的那些事兒關(guān)于float的那些事兒關(guān)于float的那些事兒關(guān)于float的那些事兒"],
["tags", ["1", "2", "3"]]
], [
["id", 2],
["title", "position知多少"],
["URL", "http://www.w3school.com.cn/cssref/pr_class_position.asp"],
["progress", 75],
["evaluation", 4],
["notes", "position知多少position知多少position知多少position知多少position知多少position知多少position知多少position知多少position知多少"],
["tags", ["1", "2"]]
], [
["id", 3],
["title", "1211gfdhfnndhdfhdfgfd"],
["URL", "http://www.w3school.com.cn/cssref/pr_class_position.asp"],
["progress", 66],
["evaluation", 2],
["notes", "gfgitiongdfgfdh42356576654435u6uyuydhfjyrdjfjyrdhhvjtdyrdhhmvjdhhmvhthhgchvjyhmhvjyhdgmhvhyedtjfhjyyedtjykkfuuysjx"],
["tags", ["2", "3"]]
]
]
for (let k of initialKnowledge) {
knowledgeData.push([...k])
}
localStorage.setItem("knowledgeData", JSON.stringify(knowledgeData))declare function foo<T>():T[];
返回泛型?我覺得你問題描述有點(diǎn)混亂。
直接說你的輸入,以及預(yù)期輸出即可
終端運(yùn)行vim --version 看看是否+python3 支持python3
我估計(jì)你是+python 用pip裝試試,不用pip3
自己封裝一個(gè)方法
function ajax(config, callbackS, callbackF) {
// 設(shè)置常用的默認(rèn)值
var url = config.url || '/';
var method = config.method || 'GET';
var async = config.async === undefined ? true : config.async;
var contentType = config.contentType || 'application/x-www-form-urlencoded';
var header = config.header || {};
var data = config.data;
// 創(chuàng)建XMLHttpRequest對(duì)象
var xhr = new XMLHttpRequest();
// 初始化請(qǐng)求
xhr.open(method, url, async);
// 設(shè)置header的默認(rèn)值
xhr.setRequestHeader('Content-Type', value);
// 設(shè)置其它header
for (var item in header) {
xhr.setRequestHeader(item, header[item]);
}
// 發(fā)送請(qǐng)求
xhr.send(data);
// 處理響應(yīng)
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
callbackS && callbackS(xhr.responseText);
}
else {
callbackF && callbackF(xhr.status);
}
}
}
}libiconv 版本不夠?
正如你的猜想,圖片還沒加載完畢,畫布已經(jīng)截好了。
imgCanvas.toDataURL('image/jpg')執(zhí)行的時(shí)候,drawScreen函數(shù)還沒運(yùn)行,所以你獲取不到數(shù)據(jù)。body中可以顯示,因?yàn)槭堑却龍D片加載完成才執(zhí)行的drawScreen函數(shù)。
做如下設(shè)置試試:
gzip_types text/plain application/javascript application/x-javascript text/javascript text/xml text/css;
據(jù)說是因?yàn)闉g覽器支持最多的js是text/javascript類型。
參考:
用這個(gè)呢?
wx.navigateBack({
delta: 1
})其實(shí)就是選出最長前綴匹配的那行:
select value from t1
where '江蘇省揚(yáng)州市高郵鎮(zhèn)' like addr || '%'
order by char_length(addr) desc limit 1
為什么又不能訪問子類的私有屬性呢
???如果能訪問,那私有屬性中的"私有"二字的意義是什么??
首先,官方這段代碼實(shí)現(xiàn)的效果,跟樓主修改后代碼的效果是差不多的。
其次,官網(wǎng)這段代碼的主要目的,是告訴使用者,next('route')的用途。
最后,至于官網(wǎng)為什么要這樣寫,得從Express的路由機(jī)制談起。
Express的路由內(nèi)部實(shí)現(xiàn)比較復(fù)雜,這里只挑跟題目有關(guān)的講。
Express中,路由是以組的形式添加的。什么意思呢,可以看下面?zhèn)未a
app.get('/user/:id', fn1, fn2, fn3);
app.get('/user/:id', fn4, fn5, fn6);
在內(nèi)部,Express把上面添加的路由,分成了兩個(gè)組。繼續(xù)看偽代碼,可以看到,路由在內(nèi)部被分成了兩個(gè)組。
var stack = [
{path: '/user/:id', fns: [fn1, fn2, fn3], // 路由組1
{path: '/user/:id', fns: [fn4, fn5, fn5] // 路由組2
];
路由匹配就是個(gè)遍歷的過程,略。
答案:跳過當(dāng)前路由分組中,剩余的handler(中間件)
如果沒有next('route'),一路next()調(diào)用下去的話,調(diào)用順序是這樣的:
fn1 -> fn2 -> fn3 -> fn4 -> fn5 -> fn6
假設(shè)某些情況下,在執(zhí)行了fn1后,想要跳過fn2、fn3,怎么辦?(比如樓主舉的例子)
答案就是在fn1里調(diào)用next('route')。
然后就變成了
fn1 -> fn4 -> fn5 -> fn6
完。
關(guān)于子選擇器和后代選擇器的區(qū)別,@止醉大神已經(jīng)說的很形象很清楚
【此疑問解答】子元素會(huì)繼承部分父元素的屬性,color可以繼承,而border不能繼承,這區(qū)別也就造成了1.1的運(yùn)行結(jié)果,子選擇器的樣式確實(shí)直接作用與第一層的<li>,而此樣式的屬性為color,所以能被第二層的<li>元素繼承;至于2.1和2.2的運(yùn)行結(jié)果不同是因?yàn)椋篵order屬性不能被子元素繼承!【表達(dá)可能不規(guī)范,大概意思如此】
在路由中注冊過的就是路由組件了
transition 組件的過度是分兩個(gè)階段的,進(jìn)入和離開,你這里由hide到show只有一個(gè)進(jìn)去階段,沒有l(wèi)eave,如果有show到hide這個(gè)階段就有離開,就是你說的l-leave
光用jquery應(yīng)該是做不到的吧?你想做的是公眾號(hào)后臺(tái),還是嵌入公眾號(hào)的網(wǎng)頁?兩者的區(qū)別還是很大的。
以前用node.js寫過公眾號(hào)的后臺(tái),你可以參考一下,很久沒更新了,有點(diǎn)久遠(yuǎn),不過還是有借鑒意義的項(xiàng)目戳這里
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級(jí)產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(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ū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。