1. 程式人生 > 其它 >【軟體工程】Node.js&VUE學習路徑調研

【軟體工程】Node.js&VUE學習路徑調研

文件編號 O.T.5.01-1

專案名稱 P2P線上交易平臺
文件名稱 Node.js&VUE學習路徑調研
作者 鹽析
最後更新時間 2021-11-22
版本更新概要
版本號 時間 更新人 更新摘要
V0.1 2021-11-22 鹽析 學習路徑調研初版
V0.2

簡介

  • Node.js 就是執行在服務端的 JavaScript。
  • VUE是一套構建使用者介面的漸進式框架。

安裝

安裝全流程請參考此篇帖子:

https://www.cnblogs.com/xifengxiaoma/p/9494068.html

基本語法

變數宣告

JS中,用var定義(宣告)變數:

function foo() {}
var a = 0;
var b = 'a';
var c = 1.0;
var d = foo;

迴圈語句

一種是類似C++的型別:

for(var i = 0; i < foo; i++) {
 //...
}

一種是for...in迴圈遍歷

var foo = {
 "hello" : "world",
 "node" : "js",
 "blahblah" : "bar"
};
for(var key in foo) {
 console.log(key + ": " + foo[key]);
}

輸出:

hello: world
node: js
blahblah: bar

JS物件

例項:

var person = {
  firstName: "Bill",
  lastName : "Gates",
  id       : 678,
  fullName : function() {
    return this.firstName + " " + this.lastName;
  }
};

參考連結:https://www.w3school.com.cn/js/js_objects.asp

核心模組

http模組

載入http核心模組:

var http = require("http")

建立一個web伺服器,返回一個server例項:

var http = require("http")

服務端接收到來自客戶端的請求時"request"執行回撥函式

  • request:客戶端向服務端傳送的請求物件
  • response:服務端向客戶端傳送的響應物件
server.on("request",function(request,response){
​    console.log("接受到請求了!url:"+request.url)
​    console.log("請求的Ip"+response.socket.remoteAddress+":"+response.socket.remotePort)
​    var str=request.url
​    var mes
​    if(str === "/"){
​        response.end("Index page")
​    }else if(str == "/login"){
​        response.end("登入")
​    }else if(str == "/haha"){   
​        response.end("哈哈")
​    }
​   // 響應內容只能是二進位制資料或字串
​    if(str == "/product"){
​        var product=[
​            {
​                name: "apple",
​                price: 3500
​            },
​            {
​                name: "banana",
​                price: 5330
​            },
​            {
​                name: "banana",
​                price: 5330
​            }
​        ]
​        response.end(JSON.stringify(product))
​    }
})

fs模組

載入檔案系統模組:

var fs=require('fs')//載入fs核心模組

讀操作:

fs.readFile('readme.txt',function(err,data){
    if(err){
        return console.log('file read err!')
    }
    console.log(data.toString)
})

寫操作:

fs.readFile('readme.txt',function(err,data){
    if(err){
        return console.log('file read err!')
    }
    console.log(data.toString)
})

Path模組

這是Node.js提供的路徑模組。主要是為了解析路徑。

path.parse('/home/user/dir/file.txt');
// Returns:
// { root: '/',
//   dir: '/home/user/dir',
//   base: 'file.txt',
//   ext: '.txt',
//   name: 'file' }

專案結構分析

預覽結構:

index.html

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <link rel="icon" href="<%= BASE_URL %>favicon.ico">
    <title><%= htmlWebpackPlugin.options.title %></title>
  </head>
  <body>
    <noscript>
      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
    </noscript>
    <div id="app"></div>
    <!-- built files will be auto injected -->
  </body>
</html>
,下面有一行註釋,構建的檔案將會被自動注入,也就是說我們編寫的其它的內容都將在這個 div 中展示。

App.vue

<template>
 <div id="app">
  <img alt="Vue logo" src="./assets/logo.png">
  <HelloWorld msg="Welcome to Your Vue.js App"/>
 </div>
</template>

<script>
import HelloWorld from './components/HelloWorld.vue'

export default {
 name: 'App',
 components: {
  HelloWorld
 }
}
</script>

<style>
#app {
 font-family: Avenir, Helvetica, Arial, sans-serif;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 text-align: center;
 color: #2c3e50;
 margin-top: 60px;
}
</style>

把這個檔案稱為“根元件”,因為其它的元件又都包含在這個元件中。
,是一個容器,名字叫“路由檢視”,意思是當前路由( URL)指向的內容將顯示在這個容器中。也就是說,其它的元件即使擁有自己的路由(URL,需要在 router 資料夾的 index.js 檔案裡定義),也只不過表面上是一個單獨的頁面,實際上只是在根元件 App.vue 中。

main.js

import Vue from 'vue'
import App from './App.vue'
import router from './router'

Vue.config.productionTip = false

new Vue({
 router,
 render: h => h(App)
}).$mount('#app')

import 的幾個模組來源於App.vue中寫的元件,其中 vue 模組在 node_modules 中,App 即 App.vue 裡定義的元件,router 即 router 資料夾裡定義的路由。

VUE

參考菜鳥教程:https://www.runoob.com/vue3/vue3-tutorial.html,主要學習模板語法到事件處理的部分。

參考連結