在頁(yè)面引入store 例如:import store from '../vuex/index'
你需要綁定的數(shù)據(jù)是這樣
data: [{
label: '一級(jí) 1',
children: [{
label: '二級(jí) 1-1',
children: [{
label: '三級(jí) 1-1-1'
}]
}]
}, {
label: '一級(jí) 2',
children: [{
label: '二級(jí) 2-1',
children: [{
label: '三級(jí) 2-1-1'
}]
}, {
label: '二級(jí) 2-2',
children: [{
label: '三級(jí) 2-2-1'
}]
}]
}, {
label: '一級(jí) 3',
children: [{
label: '二級(jí) 3-1',
children: [{
label: '三級(jí) 3-1-1'
}]
}, {
label: '二級(jí) 3-2',
children: [{
label: '三級(jí) 3-2-1'
}]
}]
}],
你要在哪一級(jí)新加一個(gè)子目錄,那就在對(duì)應(yīng)的那個(gè)對(duì)象里面的children去push一個(gè)對(duì)象,然后以此類推,就能無(wú)限去新建文件夾和子目錄了。
不要直接給文件的地址,先Ajax觸發(fā)下載事件,后臺(tái)鑒權(quán),然后返回一個(gè)包含時(shí)間限制的URL地址(參考七牛云下載私有空間的文件生成的鏈接),然后再用JS模擬打開(kāi)新窗口去下載。
也就是說(shuō):這個(gè)文件下載地址是用戶請(qǐng)求下載的時(shí)候,鑒權(quán)成功后再生成的,有時(shí)間限制(比如1小時(shí))。
你倒是 console.log 一下嘛,files[0].name 就是文件名。
那就改權(quán)限唄sudo chmod -R 755 /public/download/
不知道你解決了沒(méi)有, 推薦一個(gè)項(xiàng)目里曾經(jīng)用過(guò)的方式, 不需要直接操作dom元素, 使用Subject來(lái)傳遞輸入值, 然后通過(guò)rxjs的操作符完成具體的操作.
<input type="text" #searchInput (keyup)="search.next(searchInput.value)">
search: Subject<string> = new Subject<string>();
ngOnInit() {
this.search.asObservable().debounceTime(400).filter().map().subscribe();
}使用下面的 python 腳本,你可以輕松實(shí)現(xiàn)多開(kāi)
# -*- coding: utf-8 -*-
'''
同時(shí)運(yùn)行多個(gè)進(jìn)程,用法:
python3 xx.py <進(jìn)程數(shù)量> <進(jìn)程啟動(dòng)參數(shù)>
@author: 李毅
'''
import asyncio
from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter, REMAINDER
async def single(wid, cmd):
p = await asyncio.create_subprocess_exec(*cmd)
print('#{} pid={} 已經(jīng)啟動(dòng)'.format(wid, p.pid))
await p.communicate()
print('#{} pid={}, 代碼={} 已經(jīng)結(jié)束'.format(wid, p.pid, p.returncode))
async def main(loop, args):
if not args.worker or not len(args.cmd):
return
ps = [single(i, args.cmd) for i in range(args.worker)]
return await asyncio.gather(*ps)
if __name__ == '__main__':
parser = ArgumentParser(formatter_class=ArgumentDefaultsHelpFormatter)
parser.add_argument('worker', type=int, help='進(jìn)程數(shù)')
parser.add_argument('cmd', nargs=REMAINDER, help='命令參數(shù),例如: "sleep 30"')
loop = asyncio.get_event_loop()
loop.run_until_complete(main(loop, parser.parse_args()))
舉例:同時(shí)開(kāi)啟 10 個(gè) ping -c4 baidu.com 進(jìn)程
python3 a.py 3 ping -c4 baidu.com
輸出如下
PING baidu.com (123.125.115.110) 56(84) bytes of data.
#1 pid=137 已經(jīng)啟動(dòng)
#2 pid=138 已經(jīng)啟動(dòng)
#0 pid=139 已經(jīng)啟動(dòng)
PING baidu.com (220.181.57.216) 56(84) bytes of data.
PING baidu.com (123.125.115.110) 56(84) bytes of data.
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=1 ttl=52 time=38.0 ms
64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=1 ttl=55 time=36.3 ms
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=1 ttl=52 time=38.0 ms
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=2 ttl=52 time=37.9 ms
64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=2 ttl=55 time=36.2 ms
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=2 ttl=52 time=37.6 ms
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=3 ttl=52 time=37.9 ms
64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=3 ttl=55 time=36.1 ms
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=3 ttl=52 time=37.8 ms
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=4 ttl=52 time=37.9 ms
--- baidu.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3002ms
rtt min/avg/max/mdev = 37.916/37.955/38.024/0.199 ms
64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=4 ttl=55 time=36.1 ms
--- baidu.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 36.113/36.218/36.374/0.254 ms
#1 pid=137, 代碼=0 已經(jīng)結(jié)束
#2 pid=138, 代碼=0 已經(jīng)結(jié)束
64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=4 ttl=52 time=37.7 ms
--- baidu.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 37.647/37.818/38.060/0.249 ms
#0 pid=139, 代碼=0 已經(jīng)結(jié)束知道了:
@NonNull @Override
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = null;
// inflate 的第2個(gè)參數(shù)要傳入 parent
view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_1, parent, false);
return new MyViewHolder2(view);
}寫的很亂啊
shouldComponentUpdate(nextProps, nextState) {
14 | if( nextProps.states.set.title !== "undefined"){ // 這里set是個(gè)對(duì)象
> 15 | this.setState({set:[nextProps.states.set[0]]}) // 這里set怎么變成數(shù)組了?
16 | console.log(nextProps.states)
17 | return true
18 | }
而且一般的組件更新并不使用shouldComponentUpdate,這個(gè)方法通常用在無(wú)法利用組件機(jī)制自動(dòng)更新或某些特殊情況時(shí),手動(dòng)更新的,直接通過(guò)props傳過(guò)來(lái)的值,父級(jí)改變,子集也會(huì)自動(dòng)render,不應(yīng)該把props值重新用state管理,參考下官方給教程:
https://reactjs.org/tutorial/...
閉包是函數(shù)內(nèi)部有權(quán)訪問(wèn)函數(shù)外部的變量,不是外部訪問(wèn)內(nèi)部
首先看下完整版 破解前端面試(80% 應(yīng)聘者不及格系列):從 閉包說(shuō)起
其實(shí)主要利用了基本類型在函數(shù)調(diào)用時(shí),按值傳遞的,所以就能拿到不同時(shí)期 i 對(duì)應(yīng)的值,跟閉包沒(méi)多大關(guān)系。
1.node 8.9.3支持
node --experimental-modules a.mjs
2.瀏覽器未支持
default 拼錯(cuò)了
export default {withStyles(styles)(App),connect(mapStateToProps,null)(App)}我覺(jué)得這不是一個(gè)壞問(wèn)題啊,為什么會(huì)有那么多人踩呢?不要急著踩別人,你會(huì)算的話,你出來(lái)給我走兩步看看?
首先,我們要明確兩個(gè)概念:dpi和ppi,dpi是dot per inch的縮寫,ppi是pixel per inch的縮寫,意思就是“每英寸多少像素”。在顯示器上,dpi就等于ppi,所以我們下面就都以dpi為例。
那么我們的顯示器的dpi怎么算呢?首先,你可以通過(guò)顯示器的設(shè)置,查看一下你當(dāng)前的分辨率是多少,比如我現(xiàn)在正用的這臺(tái)顯示器,它的分辨率是2560x1440,根據(jù)勾股定理(裝逼的話也可以叫畢達(dá)哥拉斯定理,愛(ài)國(guó)人士稱為勾股定理,雖然實(shí)際上勾股從來(lái)就不是一個(gè)定理,而畢達(dá)哥拉斯是真真正正證明了這個(gè)定理的),我們可以算出對(duì)角線是2560的平方加上1440的平方然后再開(kāi)根號(hào),得到2937.20956,那么因?yàn)檫@臺(tái)顯示器大約是27英寸的,所以我們可以用2937.20956除以27英寸,得到108.7855,這就是這個(gè)顯示器的dpi了。
接下來(lái)的事情就好辦了,假設(shè),你有一張jpg圖片或者png圖片,它的寬是1088像素,用這個(gè)值除以上面的dpi,就可以得到10英寸這個(gè)數(shù)值,接下來(lái),我們?cè)侔延⒋鐡Q算成厘米,因?yàn)橐挥⒋绲扔?code>2.54厘米,所以這張圖片的寬度就是25.4厘米,254毫米,高度的計(jì)算類似。
js求解接下來(lái),這位大兄弟問(wèn)怎么樣用Javascript獲得這個(gè)尺寸?
那么,首先我們必得要先知道如何用Javascript獲得dpi??梢赃@樣做:我們先造出一個(gè)虛擬div,設(shè)定它的寬和高都是1in,也就是1英寸,注意是1in而不是1px哦,不要搞錯(cuò)了。比如這樣:
<div id="dpi" style="height: 1in; width: 1in; position: absolute; left: -100%; top: -100%;"></div>
然后我們?cè)儆?code>js算一下它的像素寬度就得到了這臺(tái)顯示器的dpi:
function getDPI() {
return document.getElementById("dpi").offsetHeight;
}
得到了dpi,聰明如你一定能猜出如何計(jì)算圖片的尺寸了吧?
可以, 完全沒(méi)問(wèn)題.
在 render 中調(diào)用 setState 才會(huì)有問(wèn)題.
webpack都搞定了
可以換一個(gè)思路,withShareTicket定義到全局的data里,然后wx.showShareMenu的時(shí)候給withShareTicket賦值為true,這樣就可以用this了
- 所以使用module中的必須要用module.exports和require?
首先你是nodejs,8以上支持import-export,但要加運(yùn)行參數(shù),并且改為.mjs,詳情看官網(wǎng)。
2.如果是按上面的方法的話不是還是將整個(gè)模塊導(dǎo)入然后再?gòu)哪K中讀取特定屬性,可是我看阮一峰的教程中是說(shuō)只加載import的方法?
據(jù)我所知,無(wú)論require還是import都是整個(gè)模塊導(dǎo)入,這是nodejs的require實(shí)現(xiàn)以及ES6的import規(guī)范,let {foo,bar} = ...只是解構(gòu)語(yǔ)法。
參考鏈接MDN import
Given an object or value named myExport which has been exported from the module my-module either implicitly (because the entire module is exported) or explicitly (using the export statement), this inserts myExport into the current scope.
import {myExport} from '/modules/my-module.js';北大青鳥(niǎo)APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國(guó)IT技能型緊缺人才,是大數(shù)據(jù)專業(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)師。