當前位置:首頁 » 雲伺服器 » vue伺服器渲染req有網站小圖標地址

vue伺服器渲染req有網站小圖標地址

發布時間: 2022-08-31 20:53:54

java web工程中如何使用vue2的伺服器渲染

從官方給出的渲染方案能看出,後端只是在頁面硬塞了數據及數據狀態進去,就效果而論渲染的工作還是前端負責,所以其他後端也能做到。具體看例子寫script標簽到頁面那段.
vue的服務端渲染,目前發現下面兩個包可以實現nodejs向其他伺服器請求數據。

Ⅱ vue渲染左邊菜單欄,點擊會出現二級菜單,渲染不成功

使用vue2服務端渲染的web站點,它的大概流程: node伺服器接受到客戶端的請求 然後向其他伺服器請求數據 把獲取到的數據給vue渲染 把渲染後的東西返回給客戶端

Ⅲ vue 網站圖標ico放在哪兒

直接放在跟目錄下是最好的,當然你也可以放在static目錄下。

Ⅳ vue前端工程代理之後怎麼查看請求介面的真實url呢

這樣就可以看到每次請求的真實路徑了

Ⅳ Vue用webpack搭建的項目遇到的disconnected問題

我專門花了幾天的時間研究了一下webpack這個目前來看比較熱門的模塊載入兼打包工具,發現上手並不是很容易,現將總結的一些有關配置的心得分享出來,歡迎大神來拍磚。。。

一、新建一個項目目錄,cd /d 定位進去,然後輸入npm init,會提示你填寫一些項目的信息,一直回車默認就好了,或者直接執行npm init -y 直接跳過,這樣就在項目目錄下生成了一個package.json文件。

二、接下來就是通過npm安裝項目依賴項,命令行輸入:npm install babel-loader babel-core babel-plugin-transform-runtime babel-preset-es2015 babel-preset-stage-0 babel-runtime vue-loader vue-html-loader vue-hot-reload-api css-loader style-loader webpack webpack-dev-server --save-dev ,繼續輸入npm install vue@^1.0.26 --save 。

這里注意的幾個點如下:

1.需要安裝的依賴項視具體的項目需求來定,我只是安了幾個必需的,後期會再加;

2.輸入之後如果一直報錯或者游標一直在轉動,要麼是npm版本太低(需要3+),要麼將npm改成cnpm,如果沒有安裝淘寶NPM鏡像,可以先輸入npm install -g cnpm --registry=https://registry.npm.taobao.org,接著輸入cnpm -v查看是否安裝完成,然後就可以使用cnpm來代替npm;

3.可以先修改package.json文件中的devDependencies和dependencies,然後再輸入npm install進行一次性安裝(偷懶的做法,嘿嘿);

4.dependencies中的vue默認安裝2+,如果dependencies中的vue選擇^1.0.26,那麼devDependencies中對應的vue-loader最好選擇^7.3.0,vue-hot-reload-api最好選擇^1.2.0,否則就會報錯;

5.dependencies中的vue-router默認安裝2+,無法識別router.map()這個方法,如果想要用回這個方法,最好選擇^0.7.13;

6.有時安裝一個依賴項,會提示還需要一並安裝別的依賴項,例如:如果要安裝bootstrap-loader,會提示要求安裝node-sass sass-loader resolve-url-loader;要安裝less-loader,會提示要求安裝less;

完成這一步之後,會在項目目錄下生成一個名node_moles的文件,對應的package.json文件中的內容變動如下(我額外添加了幾個依賴項):

"devDependencies": {
"autoprefixer-loader": "^3.2.0",
"babel-core": "^6.18.2",
"babel-loader": "^6.2.7",
"babel-plugin-transform-runtime": "^6.15.0",
"babel-preset-es2015": "^6.18.0",
"babel-preset-stage-0": "^6.16.0",
"babel-runtime": "^6.18.0",
"css-loader": "^0.25.0",
"debug": "^2.2.0",
"express": "^4.14.0",
"extract-text-webpack-plugin": "^1.0.1",
"file-loader": "^0.9.0",
"html-webpack-plugin": "^2.24.1",
"jquery": "^3.1.1",
"less": "^2.7.1",
"less-loader": "^2.2.3",
"style-loader": "^0.13.1",
"url-loader": "^0.5.7",
"vue-hot-reload-api": "^1.2.0",
"vue-html-loader": "^1.2.3",
"vue-loader": "^7.3.0",
"webpack": "^1.13.3",
"webpack-dev-middleware": "^1.8.4",
"webpack-dev-server": "^1.16.2",
"webpack-hot-middleware": "^2.13.1"
},
"dependencies": {
"vue": "^1.0.26",
"vue-router": "^0.7.13"
}

三、在項目目錄下新建一個名為src的目錄,裡面用於存放入口文件(index.js)、項目源文件(html,css,js,img之類的)、組件(.vue後綴),我的src目錄結構大致如下:

src
-entry
-index.js
-pages
-components
-css
-img
-js
-index.html
-public

當然,有輸入目錄,就有輸出目錄,即在項目目錄下新建一個output目錄,用於放置生產出來的各種資源文件。

四、在項目目錄下新建一個名為build目錄,裡面用於存放各種配置文件,涉及到基礎配置、開發和生產環境、靜態伺服器以及熱載入,詳細的內容請看下面的代碼:

1.webpack.config.js(基礎配置文件)

// 引入依賴模塊
var path = require('path');
var webpack = require('webpack');
var ExtractTextPlugin = require('extract-text-webpack-plugin');

mole.exports = {
// 入口文件,路徑相對於本文件所在的位置,可以寫成字元串、數組、對象
entry: {
// path.resolve([from ...], to) 將to參數解析為絕對路徑
index:path.resolve(__dirname, '../src/entry/index.js'),
// 需要被提取為公共模塊的群組
vendors:['vue','vue-router','jquery'],
},

// 輸出配置
output: {
// 輸出文件,路徑相對於本文件所在的位置
path: path.resolve(__dirname, '../output/static/js/'),

// 設置publicPath這個屬性會出現很多問題:
// 1.可以看成輸出文件的另一種路徑,差別路徑是相對於生成的html文件;
// 2.也可以看成網站運行時的訪問路徑;
// 3.該屬性的好處在於當你配置了圖片CDN的地址,本地開發時引用本地的圖片資源,上線打包時就將資源全部指向CDN了,如果沒有確定的發布地址不建議配置該屬性,特別是在打包圖片時,路徑很容易出現混亂,如果沒有設置,則默認從站點根目錄載入
// publicPath: '../static/js/',

// 基於文件的md5生成Hash名稱的script來防止緩存
filename: '[name].[hash].js',
// 非主入口的文件名,即未被列在entry中,卻又需要被打包出來的文件命名配置
chunkFilename: '[id].[chunkhash].js'
},

// 其他解決方案
resolve: {
// require時省略的擴展名,遇到.vue結尾的也要去載入
extensions: ['','.js', '.vue'],
// 模塊別名地址,方便後續直接引用別名,無須寫長長的地址,注意如果後續不能識別該別名,需要先設置root
alias:{}
},

// 不進行打包的模塊
externals:{},

// 模塊載入器
mole: {
// loader相當於gulp里的task,用來處理在入口文件中require的和其他方式引用進來的文件,test是正則表達式,匹配要處理的文件;loader匹配要使用的loader,"-loader"可以省略;include把要處理的目錄包括進來,exclude排除不處理的目錄
loaders: [
// 使用vue-loader 載入 .vue 結尾的文件
{
test: /\.vue$/,
loader: 'vue-loader',
exclude: /node_moles/
},
// 使用babel 載入 .js 結尾的文件
{
test: /\.js$/,
loader: 'babel',
exclude: /node_moles/,
query:{
presets: ['es2015', 'stage-0'],
plugins: ['transform-runtime']
}
},
// 使用css-loader和style-loader 載入 .css 結尾的文件
{
test: /\.css$/,
// 將樣式抽取出來為獨立的文件
loader: ExtractTextPlugin.extract("style-loader", "css-loader!autoprefixer-loader"),
exclude: /node_moles/
},
// 使用less-loader、css-loader和style-loade 載入 .less 結尾的文件
{
test: /\.less$/,
// 將樣式抽取出來為獨立的文件
loader: ExtractTextPlugin.extract("style-loader", "css-loader!autoprefixer-loader!less-loader"),
exclude: /node_moles/
},
// 載入圖片
{
test: /\.(png|jpg|gif)$/,
loader: 'url-loader',
query: {
// 把較小的圖片轉換成base64的字元串內嵌在生成的js文件里
limit: 10000,
// 路徑要與當前配置文件下的publicPath相結合
name:'../img/[name].[ext]?[hash:7]'
}
},
// 載入圖標
{
test: /\.(eot|woff|woff2|svg|ttf)([\?]?.*)$/,
loader: 'file-loader',
query: {
// 把較小的圖標轉換成base64的字元串內嵌在生成的js文件里
limit: 10000,
name:'../fonts/[name].[ext]?[hash:7]',
prefix:'font'
}
},
]
},

// 配置插件項
plugins: []
}

2.webpack.dev.config.js(開發環境下的配置文件)

// 引入依賴模塊
var path = require('path');
var webpack = require('webpack');
var HtmlWebpackPlugin = require('html-webpack-plugin');
var ExtractTextPlugin = require('extract-text-webpack-plugin');

// 引入基本配置
var config = require('./webpack.config.js');

// 必須修改原配置中網站運行時的訪問路徑,相當於絕對路徑,修改完之後,當前配置文件下的很多相對路徑都是相對於這個來設定;
// 注意:webpack-dev-server會實時的編譯,但是最後的編譯的文件並沒有輸出到目標文件夾,而是保存到了內存當中
config.output.publicPath = '/';

// 重新配置模塊載入器
config.mole= {
// test是正則表達式,匹配要處理的文件;loader匹配要使用的loader,"-loader"可以省略;include把要處理的目錄包括進來,exclude排除不處理的目錄
loaders: [
// 使用vue-loader 載入 .vue 結尾的文件
{
test: /\.vue$/,
loader: 'vue-loader',
exclude: /node_moles/
},
// 使用babel 載入 .js 結尾的文件
{
test: /\.js$/,
loader: 'babel',
exclude: /node_moles/,
query:{
presets: ['es2015', 'stage-0'],
plugins: ['transform-runtime']
}
},
// 使用css-loader、autoprefixer-loader和style-loader 載入 .css 結尾的文件
{
test: /\.css$/,
// 將樣式抽取出來為獨立的文件
loader: ExtractTextPlugin.extract("style-loader", "css-loader!autoprefixer-loader"),
exclude: /node_moles/
},
// 使用less-loader、autoprefixer-loader、css-loader和style-loade 載入 .less 結尾的文件
// 監聽 8888 埠,開啟伺服器
app.listen(8888, function (err) {
if (err) {
console.log(err);
return;
}
console.log('Listening at localhost:8888');
})

5.dev-client.js(配合dev-server.js監聽html文件改動也能夠觸發自動刷新)

// 引入 webpack-hot-middleware/client
var hotClient = require(www.cdccgs.com?middleware/client');

// 訂閱事件,當 event.action === 'reload' 時執行頁面刷新
hotClient.subscribe(function (event) {
if (event.action === 'reload') {
window.location.reload();
}
})

五、為了不必每次構建項目都要輸入webpack --display-moles --display-chunks --config build/webpack.config.js這條長命令,我們在package.js文件中修改「scripts」項:

"scripts": {
"build":"webpack --display-moles --display-chunks --config build/webpack.config.js",
"dev":"node ./build/dev-server.js"
}

注意:package.js中不能有注釋。

這樣,我們就可以通過執行 npm run build 來進行構建,同時還增加了一條開啟開發伺服器的命令 npm run dev。

Ⅵ 採用vue框架的網頁都會有vue的圖標嗎

您好,這個圖標是需要自己設置的。
怎麼在我們的Vue項目中設置自定義的網站圖標:
首先我們需要先製作個ico圖標,大小為32*32的,放到static文件夾下,我們把製作好的ico圖片改名為:favicon.ico(註:必須改名),放到我們項目中的static文件夾下。
分別在webpack.prod.conf.js和webpack.dev.conf.js裡面配置ico圖標路徑:添加代碼:favicon: path.resolve('static/img/favicon.ico') // 設置網站圖標,即可。

Ⅶ vue伺服器渲染怎麼獲取請求的路由地址

用vue伺服器給本地伺服器發送post請求,就可以獲取請求的路由地址

Ⅷ vue如何將項目部署到伺服器上並且使外網能夠訪問到

你的伺服器是什麼系統啊 ,,,linux LINUX、WINDOWS、NETWARE、UNIX。。

在linux

首先伺服器安裝node git nginx vue-cli

安裝好nginx 用你的公網ip訪問就可以看到 下面的頁面

這就可以了

還有 用express 部署這個 簡單些

Ⅸ Vue_cli 伺服器運行後URL變成http://localhost:8080/#/

在route/index.js文件中找到routes節點,在該節點上面同級定義
mode: 'history',
這樣,路由模式就變成了我們所熟悉的/A/B/C這種形式而沒有#在中間;

Ⅹ 怎麼把VUE項目部署到伺服器上面

1.使用xshell登錄到阿里雲伺服器。安裝nginx(本文安裝到/etc下)

[plain]view plain

  • cd/etc

  • apt-getupdate

  • apt-getinstallnginx

  • 2.首先先配置nginx,然後再根據配置文件做下一步操作

    打開/etc/nginx/nginx.conf文件

    [plain]view plain

  • vim/etc/nginx/nginx.conf

  • 在nginx.conf中配置如下:

    [plain]view plain

  • userwww-data;

  • worker_processesauto;

  • pid/run/nginx.pid;

  • events{

  • worker_connections768;

  • #multi_accepton;

  • }

  • http{

  • ##

  • #BasicSettings

  • ##

  • tcp_nodelayon;

  • keepalive_timeout65;

  • types_hash_max_size2048;

  • #server_tokensoff;

  • #server_names_hash_bucket_size64;

  • #server_name_in_redirectoff;

  • include/etc/nginx/mime.types;

  • default_typeapplication/octet-stream;

  • ##

  • #SSLSettings

  • ##

  • ssl_protocolsTLSv1TLSv1.1TLSv1.2;#DroppingSSLv3,ref:POODLE

  • ssl_prefer_server_cipherson;

  • ##

  • #LoggingSettings

  • ##

  • access_log/var/log/nginx/access.log;

  • error_log/var/log/nginx/error.log;

  • ##

  • #GzipSettings

  • ##

  • gzipon;

  • gzip_disable"msie6";

  • #gzip_varyon;

  • #gzip_proxiedany;

  • #gzip_comp_level6;

  • #gzip_buffers168k;

  • #gzip_http_version1.1;

  • ##

  • #VirtualHostConfigs

  • ##

  • gzipon;

  • gzip_disable"msie6";

  • #gzip_varyon;

  • #gzip_proxiedany;

  • #gzip_comp_level6;

  • #gzip_buffers168k;

  • #gzip_http_version1.1;

  • #gzip_typestext/plaintext/cssapplication/jsonapplication/javascripttext/xmlapplication/xmlapplication/xml+rsstext/javascript;

  • ##

  • #VirtualHostConfigs

  • ##

  • include/etc/nginx/conf.d/*.conf;

  • include/etc/nginx/sites-enabled/*;

  • #以下為我們添加的內容

  • server{

  • listen80;

  • server_nameyour-ipaddress;

  • root/home/my-project/;

  • indexindex.html;

  • location/datas{

  • rewrite^.+datas/?(.*)$/$1break;

  • includeuwsgi_params;

  • proxy_passhttp://ip:port;

  • }

  • }

  • }

  • 接下來就根據配置文件進行下一步工作。配置文件中的server_name後面是阿里雲伺服器的ip地址

    3.配置文件中的listen是nginx監聽的埠號,所以需要在阿里雲伺服器上為80埠添加安全組規則

    在本地的瀏覽器登錄阿里雲伺服器->進入控制台->點擊安全組->點擊配置規則->點擊添加安全組規則,之後配置如下(註:入方向和出方向都要配置)


    4.配置文件中的root和index那兩行表示我們把項目文件夾放在/home/my-project下

    例如有兩個項目文件夾分別為test1,test2,裡面都有index.html。則目錄結構如下

    /home

    |--my-project

    |--test1

    |--index.html

    |--test2

    |--index.html

    則在瀏覽器輸入http://ip/test1/index.html

    伺服器便會在/home/my-project中找到test1下的index.html執行;

    如果在瀏覽器中輸入http://ip/test2/index.html

    伺服器便會在/home/my-project中找到test2下的index.html執行;

    這樣便可以在伺服器下放多個項目文件夾。

    5.所以我們也需要在本地項目的config/index.js里的build下進行修改,如果要把項目放到test1下,則

    [javascript]view plain

  • assetsPublicPath:'/test1/',

  • 如果用到了vue-router,則修改/router/index.js

    [javascript]view plain

  • exportdefaultnewRouter({

  • base:'/test1/',//添加這行

  • linkActiveClass:'active',

  • routes

  • });

  • 6.nginx配置文件中的location則是針對跨域處理,表示把對/datas的請求轉發給http://ip:port,本文中這個http://ip:port下就是需要的數據,例如http://ip:port/seller,在本地項目文件中ajax請求數據的地方如下

    [javascript]view plain

  • consturl='/datas/seller';

  • this.$http.get(url).then((response)=>{

  • .....

  • });

  • 7.修改後在本地命令行下運行:cnpm run build 生成dist文件。把dist文件里的index.html和static文件上傳到伺服器的/home/my-project/test1下,目錄結構如下

    /home

    |--my-project

    |--test1

    |--index.html

    |--static

    8.啟動nginx

    [plain]view plain

  • servicenginxstart

  • 9.至此項目部署成功,在瀏覽器下輸入: http://ip/test1/index.html 即可



熱點內容
尾貨棉服直播間腳本 發布:2025-01-16 01:21:45 瀏覽:227
vb編程步驟 發布:2025-01-16 01:11:58 瀏覽:201
bb霜解壓 發布:2025-01-16 01:11:11 瀏覽:596
編程懟人 發布:2025-01-16 00:53:08 瀏覽:760
建立共享伺服器地址 發布:2025-01-16 00:26:40 瀏覽:565
android開機動畫修改 發布:2025-01-16 00:26:26 瀏覽:872
怎麼解壓pc版游戲 發布:2025-01-16 00:16:32 瀏覽:122
v9更新到91有方舟編譯器嗎 發布:2025-01-16 00:11:49 瀏覽:500
AB系統編程 發布:2025-01-16 00:09:37 瀏覽:621
存儲過程如何遍歷一個表的數據 發布:2025-01-16 00:08:34 瀏覽:875