大概思路是這樣:
//獲取節(jié)點(diǎn)
var a = document.getElementById('aaa');
//打印節(jié)點(diǎn),有dom節(jié)點(diǎn),有文本節(jié)點(diǎn)
console.log(a.childNodes);
//遍歷a, 取文本節(jié)點(diǎn), 再取取到的文本節(jié)點(diǎn)的值
for(var i = 0; i < a.childNodes.length; i++) {
if(a.childNodes[i].nodeType === 3) {
console.log(a.childNodes[i].nodeValue);
}
}
//寫(xiě)完以后發(fā)現(xiàn)我好像沒(méi)用jQuery… 算了懶得改了你自己看著寫(xiě)吧…在app.js中還沒(méi)有給globalData賦值時(shí)卻提前跳轉(zhuǎn)到了調(diào)用globalData數(shù)據(jù)的頁(yè)面,所以導(dǎo)致渲染失敗,試著做個(gè)引導(dǎo)或加載頁(yè)面,給數(shù)據(jù)一個(gè)緩沖的過(guò)程。
Vue Admin了解一下
*第一步:排序,時(shí)間從近到遠(yuǎn)
*第二步:分割,將數(shù)組分成5個(gè)一組,返回新數(shù)組
*第三步:抽離,將相同時(shí)間抽離出來(lái)組成要求上的數(shù)據(jù)格式
第一步:排序
var compare = function (prop) {
return function (obj1, obj2) {
var val1 = obj1[prop];
var val2 = obj2[prop];
if (!isNaN(Number(val1)) && !isNaN(Number(val2))) {
val1 = Number(val1);
val2 = Number(val2);
}
if (val1 < val2) {
return 1;
} else if (val1 > val2) {
return -1;
} else {
return 0;
}
}
}
//用法
arr.sort(compare("time"))
第二步:分割
//分割
Array.prototype.chunk = function(size) {
var array = this;
const length = array.length
if (!length || !size || size < 1) {
return []
}
let index = 0
let resIndex = 0
let result = new Array(Math.ceil(length / size))
while (index < length) {
result[resIndex++] = array.slice(index, (index += size))
}
return result
}
//用法
arr.chunk(5)
第三步:抽離
//抽離
function sortArr(arr, str) {
var _arr = [],
_t = [],
// 臨時(shí)的變量
_tmp;
// 按照特定的參數(shù)將數(shù)組排序?qū)⒕哂邢嗤档门旁谝黄? arr = arr.sort(function(a, b) {
var s = a[str],
t = b[str];
return s < t ? -1 : 1;
});
if ( arr.length ){
// _tmp = arr[0][str];
_tmp = new Date(arr[0][str]).getFullYear()
}
// 將相同類別的對(duì)象添加到統(tǒng)一個(gè)數(shù)組
for (let i=0;i<arr.length;i++) {
if(new Date(arr[i][str]).getFullYear()===_tmp){
// if ( arr[i][str] === _tmp ){
_t.push( arr[i] );
} else {
_tmp = new Date(arr[i][str]).getFullYear();
_arr.push( _t );
_t = [arr[i]];
}
}
// 將最后的內(nèi)容推出新數(shù)組
_arr.push(_t);
return _arr;
}
//用法,這里僅對(duì)一維數(shù)組使用
sortArr( arr, 'time')
//我將數(shù)據(jù)一二步處理后開(kāi)始二叉數(shù)循環(huán)
var cc = arr.sort(compare("time")).chunk(5)
var _cc = []
for(let i=0;i<cc.length;i++){
//抽離
var _datas=sortArr( cc[i], 'time')
//根據(jù)所給數(shù)據(jù)結(jié)構(gòu)進(jìn)行賦值
_cc.push({section:i+1, sectionDatas:[]})
for(let o=0;o<_datas.length;o++){
_cc[i].sectionDatas.push({
data:new Date(_datas[o][0].time).getFullYear(),
datas:[]
})
}
for(let p=0;p<_cc[i].sectionDatas.length;p++){
_cc[i].sectionDatas[p].datas=sortArr(cc[i], 'time')[p]
}
}
功力不夠,謹(jǐn)慎使用
class Functor {
constructor(data){
this.data = data
}
map(data){
return new Functor(data)
}
//排序
compare(prop) {
var result = this.data.sort(function (obj1, obj2) {
var val1 = obj1[prop];
var val2 = obj2[prop];
if (!isNaN(Number(val1)) && !isNaN(Number(val2))) {
val1 = Number(val1);
val2 = Number(val2);
}
if (val1 < val2) {
return 1;
} else if (val1 > val2) {
return -1;
} else {
return 0;
}
})
return this.map(result)
}
//分割
chunk(size) {
var array = this.data;
//獲取數(shù)組的長(zhǎng)度,如果你傳入的不是數(shù)組,那么獲取到的就是undefined
const length = array.length
//判斷不是數(shù)組,或者size沒(méi)有設(shè)置,size小于1,就返回空數(shù)組
if (!length || !size || size < 1) {
return []
}
//核心部分
let index = 0 //用來(lái)表示切割元素的范圍start
let resIndex = 0 //用來(lái)遞增表示輸出數(shù)組的下標(biāo)
//根據(jù)length和size算出輸出數(shù)組的長(zhǎng)度,并且創(chuàng)建它。
let result = new Array(Math.ceil(length / size))
//進(jìn)行循環(huán)
while (index < length) {
//循環(huán)過(guò)程中設(shè)置result[0]和result[1]的值。該值根據(jù)array.slice切割得到。
result[resIndex++] = array.slice(index, (index += size))
}
//輸出新數(shù)組
// return result
return this.map(result)
}
//抽離
sortArr(arr, str) {
var _arr = [],
_t = [],
// 臨時(shí)的變量
_tmp;
// 按照特定的參數(shù)將數(shù)組排序?qū)⒕哂邢嗤档门旁谝黄? arr = arr.sort(function(a, b) {
var s = a[str],
t = b[str];
return s < t ? -1 : 1;
});
if ( arr.length ){
// _tmp = arr[0][str];
_tmp = new Date(arr[0][str]).getFullYear()
}
// 將相同類別的對(duì)象添加到統(tǒng)一個(gè)數(shù)組
for (let i=0;i<arr.length;i++) {
if(new Date(arr[i][str]).getFullYear()===_tmp){
// if ( arr[i][str] === _tmp ){
_t.push( arr[i] );
} else {
_tmp = new Date(arr[i][str]).getFullYear();
_arr.push( _t );
_t = [arr[i]];
}
}
// 將最后的內(nèi)容推出新數(shù)組
_arr.push(_t);
return _arr;
}
//轉(zhuǎn)指定json格式
dataToJSON(){
var _json = []
var _this = this;
this.data.forEach(function(item,i){
var _datas=_this.sortArr( item, 'time')
_json.push({section:i+1, sectionDatas:[]})
for(let o=0;o<_datas.length;o++){
_json[i].sectionDatas.push({
data:new Date(_datas[o][0].time).getFullYear(),
datas:[]
})
}
for(let p=0;p<_json[i].sectionDatas.length;p++){
_json[i].sectionDatas[p].datas=_datas[p]
}
})
return _json
}
}
Functor.of = function(data){
return new Functor(data)
}
使用方法
Functor.of(a).compare("time").chunk(5).dataToJSON() //返回一個(gè)新的值,不改變?cè)瓉?lái)數(shù)據(jù)上面的代碼,如果你在SubType的原型上增加方法, 比如:
SubType.prototype.fn = function(){...}
這樣不會(huì)影響到 SuperType.prototype。
下面的代碼就會(huì)。
解決了嗎,我也遇到這個(gè)問(wèn)題
修改
assetsPublicPath: '/pc-rs/asat.portal.common'已解決。。。。。
use時(shí)把xmlparser放前面
app.use(xmlparser..);
app.use(bodyparser..);
document.addEventListener("visibilitychange",function(){});
//你可以檢測(cè)大當(dāng)前頁(yè)面的可見(jiàn)性來(lái)做下特殊處理。。。。因?yàn)檫@種情況我沒(méi)碰到過(guò),所以只能從側(cè)面進(jìn)行回答router-link實(shí)現(xiàn)的都是錨點(diǎn),如果要實(shí)現(xiàn)外鏈,只有a,要不然會(huì)在你的生成的鏈接地址前會(huì)加一個(gè)#號(hào)。
1.監(jiān)聽(tīng)窗口寬度變化,height動(dòng)態(tài)計(jì)算
2.讓img在<el-carousel-item>中垂直居中
在真機(jī)上測(cè)過(guò)么?
自定義圖片路徑,可以是本地文件路徑、代碼包文件路徑或者網(wǎng)絡(luò)圖片路徑,支持PNG及JPG,不傳入 imageUrl 則使用默認(rèn)截圖。顯示圖片長(zhǎng)寬比是 5:4
暫時(shí)沒(méi)有相關(guān)設(shè)置,參考:https://github.com/Microsoft/...
1.標(biāo)題可以不用Echarts的標(biāo)題
2.` series: [{
name: '銷量',
type: 'pie',
itemStyle: {
normal: {
color: function(params) {
var colorList = ['#C1232B', '#B5C334','#FCCE10','#E87C25'];
return colorList[params.dataIndex]
}
}
},
data: [
{value:100, name: "單選題"},
{value:50, name: "多選題"},
{value:25, name: "完型填空"}
]
}]`
3.不知道你指的是什么說(shuō)明,tooltip?
iOS 好像可以直接用 AppStore 的分享鏈接跳轉(zhuǎn)的。
采用小寫(xiě)方式,以中劃線分隔,禁止駝峰式命名。比如:my-project-name
更多請(qǐng)看這篇文章
以及為什么文件名不能大寫(xiě)
另外,這個(gè)問(wèn)題沒(méi)有什么好的答案。請(qǐng)根據(jù)公司的規(guī)范來(lái)。
嘗試了4.4版本和5.0版本,都能正確找到。
所以應(yīng)該是你安裝的依賴有問(wèn)題,刪掉node_modules,重新npm install
明確元素的數(shù)組,是指數(shù)組中的元素個(gè)數(shù)、元素的值,以及元素的類型都是明確的。例如:[1,2,3,4],數(shù)組的元素個(gè)數(shù)是 4 個(gè),元素的值,分別是 1, 2, 3, 4,元素的類型是 32 位的整型數(shù)據(jù)。
目標(biāo)類型的字節(jié)數(shù)組,例如:0x10203040 or 0x40302010,目標(biāo)類型是 32 位整數(shù)類型,所謂,字節(jié)數(shù)組,對(duì)于 32 位整型,就是四個(gè)字節(jié)的數(shù)組。但是,元素的個(gè)數(shù)就是一個(gè)了,元素的值也是一個(gè),要么是 0x10203040,要么是 0x40302010,元素的類型當(dāng)然是整數(shù)類型。
這兩個(gè)可是截然相反的東西。
總之,API 文檔想表達(dá)的意思是 Buffer 的內(nèi)存是按照原數(shù)據(jù)的類型存放的。原數(shù)據(jù)是整型,那么一個(gè)數(shù)就是 32 位(對(duì)于字長(zhǎng) 32 位的電腦來(lái)說(shuō)),原數(shù)據(jù)是 ASCII 的字符串,一個(gè)字符就是一個(gè)字節(jié),如果原數(shù)據(jù)是 utf-8 編碼的字符串,一個(gè)字符就是三個(gè)字節(jié)。
第一個(gè)找不到模塊的問(wèn)題,你用 WebStorm 的話就不會(huì)報(bào)這個(gè)了
第二個(gè),你照它說(shuō)的設(shè)置什么選項(xiàng)刪除該警告就行了
北大青鳥(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)師。