你先用小程序開發(fā)工具里面有個監(jiān)視每個頁面data的窗口看看,data里的值有無變化
建議不要用 var that=this,你這邊沒有嵌套函數(shù)作用域,建議用箭頭函數(shù)。
在你改變state之后,應(yīng)該將你那個改變后的數(shù)組,用setData,改變你原來data中定義的數(shù)組。
1.對比一下本地js文件和CDN文件是不是一致
2.可在webpack配置中加入ts-loader
3.看看viz.js有沒有npm包
@dablwow80 大大
抱歉,我不太明白你寫的範(fàn)例
我原本的是用
success: function(response){
$.each(response, function() {
(第一層的資料)
(這邊開始是第二層)
var goodList=JSON.parse(this.good);
for(var i=0;i<goodList.length;i++){
}
});
}
但我想把它也變成用each方法,我試著嘗試了你的範(fàn)例,還是不太能明白
@前端魏強,抱歉我是前端新手,你說的我更不太明白了..
https://stackoverflow.com/que...
終于閑下來了,完善一下答案。
ES 一直以來在堅持的一個原則便是完全避免 breaking changes,畢竟用戶的瀏覽器版本不是編程人員所能干涉的。如果用戶的升級導(dǎo)致某些網(wǎng)站的舊代碼失效了,組委會肯定會被噴死。這點和其他語言很不一樣。因此 Compatibility 是首要原因,新版 ES 必須完全兼容舊版 ES。
Readability 和 Generality 其實都是產(chǎn)生的附加效果。Generality 其實是個偽需求,空 Generator 都可以被有 0 條或 1 條 yield 語句的 Generator 替代,而且后者可讀性比前者更好。Readability 這點 ES 的確實比 Python 的要優(yōu)秀,至少只閱讀函數(shù)頭我便可以知道這是個 Generator 還是 Normal Function,但優(yōu)勢只有在讀長代碼時才明顯。僅憑這些不足以 diss Python 的設(shè)計。
而至于 Python 當(dāng)年為什么沿用了 def,其實沒有過多什么“意義”,僅僅是出于 Guido 的直覺而已:-)(參考 PEP 255)。
先進(jìn)入recovery mode,然后以root身份啟動一個可啟動的bash,最后進(jìn)行root密碼的設(shè)定,就ok了.詳情可以去看一下http://www.k-dou.com/2018/06/... 里面的內(nèi)容
你的目的是在所有queryVolume都返回結(jié)果后,再返回json,因此res.json()一定是一個異步行為。
兩個方案:
1.在每個then里面判斷是否全部請求完畢
results.forEach((index,element) => {
const NOT_FILL = '__not_fill'
// 生成一個等長數(shù)組,打標(biāo)記
const jsonResult = new Array(results.length)
jsonResult.fill(NOT_FILL)
exchangeDb.queryVolume(element.name,50).then(volume => {
element.volume = volume;
jsonResult[index] = element;
// 數(shù)組全部有值再返回
if(!jsonResult.some(element => element === NOT_FILL)){
res.json(jsonResult)
}
})
});
2.把循環(huán)queryVolume的過程封裝成一個新的promise,resolve的條件同1的res.json,然后在這個promise的then方法中返回json
現(xiàn)在不管怎么改 都是處理的含有的數(shù)據(jù)
let tableDate = [{discountId:2,discount:1}];
let discountDate = [
{
id:1
},
{
id:2
}
];
那么第一輪比較,發(fā)現(xiàn)tableDate[0].discountId !== discountDate[0].id,于是tableDate[0].discount = 2。這應(yīng)該不是你想要的吧?
for(...){
for(...){
let isExisted = false;
if(... === ...){
isExisted = true;
break;
}
}
tableDate[index].discount = 2;
}loadash intersection :
_.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');
// => [{ 'x': 1 }]
參考,內(nèi)部代碼應(yīng)該也是雙重便利。 https://lodash.com/docs/4.17.4
后端給你一個token(就是一個個字符串),你保存起來就是了(cookie 和 localStorage 隨意 或者其他位置)。你每次請求把這個token發(fā)送給后端就完事。
至于驗證這個token是否可用?是否過期?是后端的事情。
這個token的算法,token的表示的含義,也是后端的事情。
前端當(dāng)成一個標(biāo)示處理就好了。
方法是:
<template>
<div class="lunbo">
<div id="iSlider-wrapper" ref='swipe'></div>
<div id="hidden-space" style="display:none">
<p style="font-size:3em;text-align: center;color:#04f512">A node in dom tree.</p>
</div>
</div>
</template>
<script type="text/ecmascript-6">
import 'base/Carousel/iSlider'
import 'base/Carousel/iSlider.animate'
export default {
props: {
swipeinfo: {
type: Array
}
},
data () {
return {
}
},
mounted() {
this.neiStyle()
},
methods: {
neiStyle() {
setTimeout(() => {
var self = this;
var data = this.swipeinfo;
self.S = new iSlider(self.$refs.swipe, data, {
isLooping: 1,
isOverspread: 1,
isAutoplay: true,
animateTime: 800,
animateType: 'flow'
}, 300);
})
});
}
},
components: {
}
}
</script>
<style scoped lang="css" stylesheet="text/css">
body {
margin: 0;
padding: 0;
background: #333;
overflow: hidden;
}
/*ul wrapper*/
#iSlider-wrapper {
height: 100%;
width: 100%;
overflow: hidden;
position: absolute;
}
#iSlider-wrapper ul {
list-style: none;
margin: 0;
padding: 0;
height: 100%;
overflow: hidden;
}
#iSlider-wrapper li {
position: absolute;
margin: 0;
padding: 0;
height: 100%;
overflow: hidden;
display: -webkit-box;
-webkit-box-pack: center;
-webkit-box-align: center;
list-style: none;
}
#iSlider-wrapper li img {
max-width: 100%;
max-height: 100%;
}
</style>
<style scoped lang="scss">
@import "./iSlider.scss"
</style>
引用組件之后,傳值,渲染之后卡頓,需要改變一下屏幕寬度,才能運行? 那是因為需要加一個延時加載,如果剛開始就執(zhí)行的話,props還沒有完全傳值成功。
自己做壓縮,把圖片繪制到制定大小的canvas上,然后調(diào)用wx.canvasToTempFilePath(OBJECT)接口保存為圖片。
<button bindtap='selectImage'>select image</button>
<button bindtap='saveImage'>save image</button>
<canvas style="width: 300px; height: 200px;" canvas-id="myCanvas"></canvas>
// 繪制圖片到canvas上
selectImage:function(){
const ctx = wx.createCanvasContext('myCanvas')
wx.chooseImage({
success: function(res){
ctx.drawImage(res.tempFilePaths[0], 0, 0, 300, 200)
ctx.draw()
}
})
},
//保存圖片
saveImage:function(){
const ctx = wx.createCanvasContext('myCanvas')
wx.canvasToTempFilePath({
x: 0,
y: 0,
width: 300,
height: 200,
destWidth: 300,
destHeight: 200,
canvasId: 'myCanvas',
success: function(res) {
console.log(res.tempFilePath)
wx.previewImage({
urls: [res.tempFilePath],
})
}
})
}
webpack2+較webpack1有很多api改動, 我猜想你指的"重新run一遍"應(yīng)該是重新裝npm包了, 你現(xiàn)在的webpack版本是3.8.x, 我猜測你webpack的配置是webpack1.x的, 所以要解決問題的話.
rm -rf node_modules/webpack
npm i -D webpack@1.12.0
npm run dev這個fields設(shè)為day吧
在文件尾export就沒有問題,為了避免js文件同時加載的情況,typescript會禁止用相同變量名,除非將文件作為可導(dǎo)入的包
selectedIndex所在對象未聲明,直接在代碼找就可以解決問題。推薦一個可視化正則表達(dá)式的網(wǎng)址
https://regexper.com/#%5C%7C%...
推薦一個正則表達(dá)式的匹配網(wǎng)址
https://regex101.com/#javascript
推薦一個正則學(xué)習(xí)地址:
http://deerchao.net/tutorials...
哥們你解決了嗎?獲取到點擊的item 在一級數(shù)組中的index 了嗎
使用ajax
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達(dá)內(nèi)教育集團成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國制造2025”,實現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。