中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

VUE如何實現上傳圖片功能

發布時間:2022-11-24 09:59:44 來源:億速云 閱讀:134 作者:iii 欄目:開發技術

這篇“VUE如何實現上傳圖片功能”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“VUE如何實現上傳圖片功能”文章吧。

首先要創建一個WebApi項目,創建完之后,在wwwroot文件下,創建一個文件夾 名字可以隨意起  我這里呢就叫做Upload了

VUE如何實現上傳圖片功能

ok ! 然后我們再創建一個控制器 IndexController 代碼如下

要知道上傳圖片都是通過HTTP去請求,服務端從request中讀取

public class PicData
    {
      public string Msg { get; set; }
    }

    [HttpPost]
    public async Task<bool> InsertPicture([FromServices]IHostingEnvironment environment)
    {
      var data = new PicData();
      string path = string.Empty;
      var files = Request.Form.Files;
      if (files == null || files.Count() <= 0)
      {
        data.Msg = "請選擇上傳的文件。";
        return false;
      }

      //格式限制
      var allowType = new string[] {"image/jpg", "image/png", "image/jpeg"};
      if (files.Any(c => allowType.Contains(c.ContentType)))
      {
        if (files.Sum(c => c.Length) <= 1024 * 1024 * 4)
        {
          foreach (var file in files)
          {
            string strpath = Path.Combine("Upload", DateTime.Now.ToString("MMddHHmmss") + file.FileName);
            path = Path.Combine(environment.WebRootPath, strpath);

            using (var stream = new FileStream(path, FileMode.OpenOrCreate, FileAccess.ReadWrite))
            {
              await file.CopyToAsync(stream);
            }
          }

          data.Msg = "上傳成功";
          return true;
        }
        else
        {
          data.Msg = "圖片過大";
          return false;
        }
      }
      else

      {
        data.Msg = "圖片格式錯誤";
        return false;
      }
    }

注意一下這段代碼

string strpath = Path.Combine("Upload", DateTime.Now.ToString("MMddHHmmss") + file.FileName);

在wwwroot下創建的文件夾,要將Upload替換成你的文件夾名稱

然后這還沒有完,還要做跨域,要在Startup.cs文件中去改

public void ConfigureServices(IServiceCollection services)
    {
      services.AddMvc();
      services.AddCors(options =>
      {
        options.AddPolicy("hehe", p => p.AllowAnyMethod()// 允許任何方法 GET,POST,PUT,DELETE, OPTIONS
            .AllowAnyHeader()    // 允許任何請求頭
            .AllowAnyOrigin()    // 允許任何地址
        );
      });
    }

ConfigureServices方法,然后還有Configure方法

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
      app.UseStaticFiles(); app.UseCors("hehe");
      if (env.IsDevelopment())
      {
        app.UseDeveloperExceptionPage();
      }
      app.UseMvc();
    }

ok完成了,

然后我們就要去創建Vue項目了,

使用npm創建vue項目,vue init webpack file     我們跳過創建過程

使用npm 引用iview  然后在vue項目中的main.js中引用

import iView from 'iview';
import 'iview/dist/styles/iview.css';
import locale from 'iview/dist/locale/en-US';

Vue.use(iView, { locale });

ok,然后我們就在app.vue里面寫代碼

<template>
 <div id="app">
  
  <Upload action="http://localhost:53688/api/Index">
    <Button icon="ios-cloud-upload-outline">Upload files</Button>
  </Upload>

 </div>
</template>

Vue的優點

Vue具體輕量級框架、簡單易學、雙向數據綁定、組件化、數據和結構的分離、虛擬DOM、運行速度快等優勢,Vue中頁面使用的是局部刷新,不用每次跳轉頁面都要請求所有數據和dom,可以大大提升訪問速度和用戶體驗。

以上就是關于“VUE如何實現上傳圖片功能”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

vue
AI

巴南区| 田阳县| 秭归县| 南溪县| 吉林省| 浦城县| 桂林市| 资阳市| 崇州市| 天门市| 随州市| 南通市| 高邑县| 潼关县| 吴川市| 宁国市| 门头沟区| 泽普县| 万宁市| 大石桥市| 旬阳县| 平泉县| 中牟县| 邢台市| 孟州市| 肇庆市| 南部县| 清原| 天津市| 如东县| 通辽市| 南通市| 周宁县| 宁阳县| 灵台县| 宁南县| 鲁甸县| 壤塘县| 都昌县| 延寿县| 玉屏|