2,各位是否有訓(xùn)練面向?qū)ο蟮乃季S的方法,謝謝。
寫(xiě)過(guò)幾萬(wàn)行代碼再說(shuō)。
已解決
xxx = {'price__sum': Decimal('320.00')};
print xxx['price__sum'].to_eng_string()歷經(jīng)三天,終于解決。
分享一下經(jīng)驗(yàn):
用cordova-plugin-wechat插件做微信支付功能,調(diào)用客戶(hù)端返回“普通錯(cuò)誤”時(shí),基本的問(wèn)題出的的可能是:
1、android打包的APK簽名和公眾平臺(tái)填寫(xiě)的是否一致
2、誤把公眾號(hào)的appId拿來(lái)用了(有的人開(kāi)發(fā)的時(shí)候有同時(shí)申請(qǐng)公眾號(hào))
3、調(diào)用微信里傳的params的數(shù)據(jù)有問(wèn)題
一、我想你用cordova-plugin-wechat插件時(shí)應(yīng)該不光是做支付可能還有三方登陸和分享,因?yàn)橹Ц兜腻e(cuò)誤提示比較坑,簽名不對(duì)和數(shù)據(jù)不對(duì)都回一個(gè)提示根本無(wú)法區(qū)別。你如果三方登陸或分享做成功那,那支付回這個(gè)錯(cuò)90%就是params內(nèi)的數(shù)據(jù)不對(duì)造成的。
二、appId不對(duì)的話(huà)一般后臺(tái)在生成預(yù)處理訂單也會(huì)報(bào)錯(cuò),到你這的可能性不大。
三、調(diào)用微信里傳的params的sign是要對(duì)六個(gè)數(shù)據(jù)進(jìn)行加密,而且順序不能錯(cuò),順序不對(duì),加密后返回的SIGN字符串也是不一樣的,他的報(bào)錯(cuò)也是普通錯(cuò)誤。(我就是卡在這個(gè)地方了)
所以,報(bào)“普通錯(cuò)誤”不單單只是簽名問(wèn)題,后臺(tái)給你回的數(shù)據(jù)如果不對(duì),也會(huì)報(bào)這個(gè)錯(cuò),前期因?yàn)椴檎曳较虿粚?duì),白白浪費(fèi)時(shí)間。(吐槽一下:微信支付的開(kāi)發(fā)文檔里對(duì)先成預(yù)處理訂單后很多后臺(tái)直接把微信后臺(tái)給的信息里的SIGN直接又給前端或android,在這里要給前端和android的sign是要重新加密的,另外,加密是要有順序的,順序不能錯(cuò),微信,你敢報(bào)錯(cuò)提示再詳細(xì)點(diǎn)嗎?????!?。。。?/p>
查看日志,為什么超時(shí)。
添加一個(gè)監(jiān)聽(tīng)任務(wù)失敗的方法,執(zhí)行處理就好了
你應(yīng)該需要把公共代碼抽出來(lái),類(lèi)似下面的代碼:
plugins: [
new webpack.optimize.CommonsChunkPlugin({
name: "vendor",
minChunks: Infinity
})
]
具體參考鏈接:commons-chunk-plugin
最后,感謝邀請(qǐng),希望幫到你
兩種方法(第二種貌似是后端加)
1.<a href="你的下載地址" download> 核心是download屬性。
2.下載地址加header("Content-Disposition:attachment;filename=xxx"); 核心是header。
el-tab-pane中的屬性應(yīng)該是:closable而不會(huì):close,返回的數(shù)組editableTabs2中每個(gè)對(duì)象中的close屬性值應(yīng)是布爾值
通過(guò)效驗(yàn)后 將用戶(hù)基礎(chǔ)信息,權(quán)限 放在 SESSION里面
SESSION回話(huà)信息失效,立即要求重新登錄
每次效驗(yàn)用戶(hù),直接用當(dāng)前回話(huà)讀取即可。
這些沒(méi)什么技術(shù)把 無(wú)非就是死模板對(duì)應(yīng)的數(shù)據(jù)發(fā)送到后臺(tái) 審核 數(shù)據(jù)OK就發(fā)布 給你個(gè)url 頁(yè)面鏈接
"#qq_23_jpg#".replace(/#(.*?)_(.*?)_(.*?)#/,'<img src="image/$1/$2.$3"/>')
集合名.findByIdAndUpdate(id, {$set: {新數(shù)據(jù)}}).then(res=>{})
ajax是異步的,同時(shí)發(fā)三個(gè)請(qǐng)求等于同時(shí)開(kāi)了3個(gè)線(xiàn)程,并不知道哪個(gè)ajax call先回來(lái),所以這是正?,F(xiàn)象, 你可以用param中的key和ajax call 回來(lái)的數(shù)據(jù)作對(duì)比,判斷是哪個(gè)ajax call
查詢(xún)已經(jīng)存到緩存中了,你手動(dòng)改庫(kù),但是緩存中還是之前的,樓上說(shuō)的是對(duì)的
路由進(jìn)行匹配跳轉(zhuǎn)的時(shí)候是只要上面滿(mǎn)足條件就進(jìn)行跳轉(zhuǎn),下面的就不進(jìn)行了,這也就是為啥你這個(gè)跳轉(zhuǎn)的時(shí)候就往第一個(gè)跳轉(zhuǎn),不執(zhí)行下面那個(gè)是一樣的,解決的辦法你可以試試使用命名路由進(jìn)行跳轉(zhuǎn),例如:
{
path: '/rd',
component: Rd,
children: [
{
path: ':id',
component: Rdsinger,
name: 'rds' //這里給這個(gè)路由模板起個(gè)名字
},
{
path: ':chatid',
component: Iconsinger,
name: 'ics' //這里也命名一個(gè)不同的名字
}
]
}
在頁(yè)面中使用的時(shí)候就用:this.$router.push({name: '這里是路由里面命名的名字', params:{這里寫(xiě)攜帶的參數(shù)}}) 這里的具體寫(xiě)法你可以參照官方文檔的介紹,給你個(gè)鏈接,相信你會(huì)看懂的 https://router.vuejs.org/zh-c...
PHP 用 PDO,一切交給PDO 就解決了
如果你想要這種你說(shuō)的那種 一個(gè)配置文件的
vue init webpack-simple name
這個(gè)就是一種的 簡(jiǎn)單版本。
另外為什么會(huì)有那個(gè)build和config那種呢,那個(gè)是屬于完整版本,大而全可以這么理解
你不理解哪塊?
整體實(shí)現(xiàn)是有一個(gè)v-for所有notice類(lèi)的組件。你每調(diào)用一次就往里push一個(gè)。
1.success->message
// 幾種方法最終都是調(diào)用message
success (options) {
return this.message('success', options);
}
2.message-->notice
message(type, options){
if (typeof options === 'string') {
options = {
content: options
};
}
return notice(options.content, options.duration, type, options.onClose, options.closable);
}
3.noitice-->getMessageInstance
function notice (content = '', duration = defaults.duration, type, onClose = function () {}, closable = false) {
//...
// 這個(gè)應(yīng)該是拿實(shí)例
let instance = getMessageInstance()
// 這個(gè)應(yīng)該是真正append到頁(yè)面上
instance.notice({
});
// 用于手動(dòng)消除,返回值不用管
return (function () {
})();
}
4.getMessageInstance-->Notification.newInstance
function getMessageInstance () {
// 復(fù)用?
messageInstance = messageInstance || Notification.newInstance({
});
return messageInstance;
}
5.iview/src/components/base/notification/index.js
Notification.newInstance = properties => {
const _props = properties || {};
// 創(chuàng)建了一個(gè)統(tǒng)一v-for所有notice類(lèi)的組件
const Instance = new Vue({
data: _props,
render (h) {
return h(Notification, {
props: _props
});
}
});
const component = Instance.$mount();
document.body.appendChild(component.$el);
return {
// 3里有調(diào)用notice()的一步
notice (noticeProps) {
// 調(diào)了組件的add,向v-for隊(duì)列里加了一個(gè),去notification.vue能看到
notification.add(noticeProps);
}
};你最終目的是為了讓圖片自適應(yīng)?如果是這樣的話(huà)直接用css就好了,可以了解下object-fit,或者別的css方法
或者js/jq獲取
你這里用ref也行但是有一點(diǎn)錯(cuò)了,就是循環(huán)ref=‘相同值’,就算你拿到了ref,也不無(wú)濟(jì)于事,
然后組件里面還有東西要加,應(yīng)該在該組件里面加而不是在外面加,然后取值可以這樣
this.$refs.組件.$refs.xxxx
可能是你組件的 webpack 配置里面沒(méi)有正確設(shè)置 output.library 和 output.libraryTarget 選項(xiàng)?
output: {
library: 'LabelTree',
libraryTarget: 'umd'
},北大青鳥(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)師。