鍍金池/ 問答
空痕 回答

//這里我假設(shè)題主需要的是得到一個(gè)字符串

let name = "測試";

//方法一 JSON對象序列化

var text = JSON.stringify({"name":name});//ECMA5.1+
console.log(text);//{"name":"測試"}

//方法二 模板字符串

var text = `{"name":"${name}"}`;//ECMA2015+
console.log(text);//{"name":"測試"}

//方法三 直接拼接字符串

var text = '{"name":"'+name+'"}';
console.log(text);//{"name":"測試"}
久不遇 回答

這個(gè)不只是 websocket 的事情吧,跟你的界面有關(guān)。如果前端不是你做的,你可以定義一個(gè)已讀事件,讓前端合理的使用。
如果前端也是你做的,看你怎么定義“已讀”了,你可以在打開用戶的聊天窗口的時(shí)候把這個(gè)人發(fā)來所有的未讀消息標(biāo)為已讀,或者在聊天窗口滾動(dòng)的時(shí)候把顯示出來的未讀消息標(biāo)記為已讀。

陌顏 回答

直接過濾掉那個(gè)index不就可以了嗎

var arr = [{index: 1, a: "1", b: "2", c: "3", d: "4"},{index: 2, a: "4", b: "5", c: "6", d: "7"}];
var result = arr.filter(o=>o.index != 1);
console.log(result);
久不遇 回答

localstorage或者sessionStorage,進(jìn)頁面后判斷并填充數(shù)據(jù)

瘋子范 回答

可以把你的xxList變成[[A, B, C], [D, E, F]]的形式

<tr v-for="tr in xxList">
  <td v-for="td in tr">{{td}}</td>
</tr>
幼梔 回答

圖片描述

思路很簡單 就是字符串拼接換行符。

心夠野 回答
rs0:PRIMARY> db.test.find()
{ "_id" : ObjectId("5aa005259c15e1a37b54d616"), "x" : [ 1, 2, 3, 4 ] }
rs0:PRIMARY> db.test.update({}, {$rename: {x: 'y'}}, {multi: true})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
rs0:PRIMARY> db.test.find()
{ "_id" : ObjectId("5aa005259c15e1a37b54d616"), "y" : [ 1, 2, 3, 4 ] }

$rename是沒有問題的。你的代碼里面只看出來rename了sex,并且這個(gè)在你的截圖里面是成功的。所以你rename extra的時(shí)候是怎么做的?
題外話:為回答問題的人考慮一下,截圖放這是讓別人照著截圖敲一遍你的代碼來測試嗎?

尤禮 回答

Try setting margin to auto and that may get the text in the centre.
Remove the margin-left from the css.
Professional assignment writers - USA

維他命 回答

你可以用Promise.all或者for ofasync/await

function pushData(arr, value) {
    return new Promise((reslove) => {
        setTimeout(() => {
            arr.push(value);
            console.log('push data over', value)
            reslove();
        }, 1000);
    })
}

async function longTimeDo() {
    let data = [];
    let sourse = [1, 2, 3, 4, 5];

    for (let value of sourse) {
        await pushData(data, value);
    }

    console.log(data)

}

longTimeDo();
青黛色 回答

event.files 是你上傳的文件列表

//常規(guī)去重
let flag = false;
for(let i = 0;i<event.files.length-1;i++){
    for(let j = i+ 1;j<event.files.length;j++){
        if(event.files[i].name==event.files[j].name) flag=true
    }
}
//文件名數(shù)組
const arr = Array.from(event.files).map(item=>item.name)
//用set去重
const set = new Set(arr)
//如果set長度和原來不同就是有重復(fù)
if(set.length!=arr.length){
    ...
}
巷尾 回答

你一頁顯示多少行呢? 前端分頁還是后端分頁?聽你描述感覺是前端分頁。。。

巷尾 回答

就是username和passport這個(gè)字段有可能有,有可能沒有?

interface Wechat {
    username?:Validate;
    password?:Validate;
}
interface Validate {
        defaultValue:string,
        allowNull:false,
        get:Function,
        set:Function,
        validate:{[index:string]:any}
        }
}
礙你眼 回答

對的,差不多。

一個(gè)是es5語法,一個(gè)是es6

http請求是典型的請求/響應(yīng)模型。

發(fā)送了就是發(fā)送了, 接受了就是接受了。假如我發(fā)了一個(gè)請求到后端,后端又接受一個(gè)取消的請求。 后臺(tái)邏輯怎么寫? 就會(huì)亂套了。

如果你非要監(jiān)聽這種情況,可以在req.close中監(jiān)聽

因此`不存在后端取消的說法,所謂的取消只是前端單方面的不去處理這個(gè)請求的響應(yīng),換句話說就是
注銷這個(gè)請求的回調(diào)函數(shù),后端一般是不會(huì)對這個(gè)取消作出處理的 `

影魅 回答

router.get('/hello/:name', async (ctx, next) => {

....
ctx.response.body = result //數(shù)據(jù)結(jié)果;

});

朕略萌 回答

app_key用來做區(qū)分的,區(qū)分每個(gè)請求app,sign是簽名,防止傳輸過程中遭到擅改,secret用來做簽名的

逗婦乳 回答

與那個(gè)沒有關(guān)系,只是表示以Form的形式上傳的。把你出錯(cuò)的信息貼了出來看看。

安淺陌 回答

http不能主動(dòng)發(fā)送信息,websocket就是為了解決這個(gè)問題而衍生的新技術(shù)

命于你 回答

有一篇這樣的博客https://www.jianshu.com/p/439...,你也配置按需加載,每個(gè)路由都有獨(dú)立的js,css,推薦一個(gè)githubwebpack4

不舍棄 回答

clipboard.png
這段代碼寫得沒問題嗎 能運(yùn)行?
box在函數(shù)作用域內(nèi)是未定義的 直接拿來用報(bào)錯(cuò)了吧