vue+node+mongoose踩過的坑

1.當你在cmd中輸入npm run dev的時候,出現這種錯誤javascript

頗有多是目前的端口被佔用了,能夠把全部可能用到這個端口號的應用關閉或者你直接改一個新的端口號html

修改端口的方法:新打開一個cmd,而後輸入netstat -a,而後看對應你的端口的ipc,而後打開任務服務器查看以前看到的ipc,看到以後關閉服務就能夠了。(若是你在cmd中看到的端口過多,cmd可能會翻頁,那麼你就須要輸入netstat -a>output.txt 將所有的端口打印到txt文件上,而後從文件上查看ipc)vue

2.若是是在cmd中輸入一個npm run dev的時候,出現這種錯誤:java

一樣的瀏覽器是504node

那麼頗有多是你沒有在你的文件夾中的server就是放置node文件的文件夾中的cmd中輸入node indexnginx

3.若是後臺獲取數據的時候,瀏覽器顯示的是200,數據庫中也有數據庫,但是出現的結果是空數組,緣由是:mongodb

https://segmentfault.com/q/1010000009630591?_ea=2001292vue-cli

4.獲取某一頁中的數據數據庫

models.seek.find().skip(offset).limit(limit).find((err,data)=>{})

 5.若是要獲取集合表的所有數據?npm

models.list.find({"title":/val/}).count(function(err,data){
    sum=data;
})

6.在expres中獲取到前臺傳過來的參數:兩種(get post)

router.get('xxx',(req,res)=>{
   console.log(req.query) 
})
router.post('xxx',(req,res)=>{
   console.log(req.body) 
})

7.怎麼解決跨域問題(開發環境)?

在confgi/index.js中 添加下面這些代碼

(1)這樣的話url:http://localhost:12345/api/xxx就能夠簡化爲=>/api/xxx

(2)在changeOrigin: true,這個設置爲true的話,就會在本地虛擬一個請求,而且代你發送該請求

 dev: {
    env: require('./dev.env'),
    port: 12342,
    autoOpenBrowser: true,
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    proxyTable: {
        '/api': {
            target: 'http://localhost:12345/api',
            changeOrigin: true,
            pathRewrite: {
              '^/api': '/api'
            }
          }
},

 8.若是要在cmd中運行文件npm run dev的時候出現這種錯誤:

解決辦法是:

將文件裏面的package-lock.json名字是這個的文件刪除,而後從新npm install

以上操做完成以後,從新npm run dev就能夠到頁面了

資料:https://stackoverflow.com/questions/44338716/cannot-find-module-fs-realpath-after-npm-v5-0-1-upgrade/44339236

9.打開node中的index.js時候會出現這種警告:

C:\Users\admin\Desktop\mange\mange\server>node index
鏈接上後臺。。。
(node:2328) DeprecationWarning: `open()` is deprecated in mongoose >= 4.11.0, use `openUri()` instead, or set the `useMongoClient` option
if using `connect()` or `createConnection()`. See http://mongoosejs.com/docs/connections.html#use-mongo-client
連接數據庫成功

解決是:在鏈接mongodb數據庫的時候 添加成這樣:mongoose.connect('mongodb://localhost/test',{ useMongoClient: true });

10.favicon.ioc

通常的咱們須要在項目的根目錄下,放置一個favicon.ico這個是當你的網頁被收藏的時候,顯示在收藏欄中的圖標

可是在vue-cli中咱們須要將faviocn.ico放在static文件夾中,而且在index.html中添加<link href="./static/favicon.ico" rel="shortcut icon">才能獲取到

11.若是遇到這種錯誤(function (exports, require, module, __filename, __dirname) { <!doctype html>

這是由於你用commonjs中的require引入的文件不是js文件,只要更改爲js文件就能夠了

12.想要直接刪除node_modules

npm install rimraf -g
rimraf node_modules

13.若是鏈接數據庫的時候,200 可是數據就是獲取不到:

這裏面api.js接口設置的應該是正確的,只能是db設置的時候不對,多是數據庫的集合名稱不對

相關文章
相關標籤/搜索