Vuejs에서 SVG를 사용하면 간단해집니다.
네트워크 이미지
인터넷에서 가장 자주 사용하는 이미지 형식은 비트맵,svg, 웹p를 포함한다.
비트맵
비트맵 이미지는 픽셀이라는 작은 점으로 구성됩니다.각 픽셀은 특정 색상을 지정하고 이미지를 형성하는 패턴으로 정렬된 사각형입니다.비트맵을 확대할 때 각 픽셀을 볼 수 있습니다.JPEG, PNG 및 GIF 등의 이미지 형식은 비트맵입니다.비트맵 형식은 사진과 같은 고도의 상세한 이미지에 적용된다.
WebP
WebP는 구글이 만든 고성능 이미지 형식으로 비트맵을 대체하기 위한 것이다.
SVG
축소 가능한 벡터 그래픽 (svg) 은 벡터 이미지 형식으로 수학 공식에 따라 만들어집니다. 렌더링 장치에서 계산할 수 있는 그리기 방법에 대한 정보는 첨부되지 않습니다.SVG는 비트맵보다 가벼워서 아이콘, 아트웍 등 확대/축소된 선명한 이미지를 만드는 데 사용됩니다.
SVG 구문
정의를 분석해 봅시다.
💡SVG usually consists of a variety of elements e.g. <path>, </style>,<circle> etc. nested inside an svg element. The inner elements enclosed inside the svg tags are used to describe specific properties of the SVG whereas the outer svg element which is normally referred to as the root element basically instantiate and terminate an instance of SVG.The root element may contain attributes like viewBox, class, id, fill, height, width and xmlns. The id and class attributes are usually used to extend functionality in Javascript or to style the svg element. The id attribute may also be used in XML specific configurations like the setting up of links. The xmlns attribute is a XML namespace, it is used by the browser to determine how to render the SVG.
Vuejs에서 SVG 사용
Vue CLI를 사용하여 프로젝트를 안내합니다.
요구 사항:
vue create <project-name>
항목의 고유한 이름으로 바꾸기<project-name>
.제 프로젝트는namesvg-tutorial
입니다.Default ([Vue 2] babel, eslint)
.이 메시지는 편리한 명령을 포함하고 있습니다. 시작하세요!
src
폴더는 SVG와 관련된 대부분의 작업이 이 폴더에 한정되기 때문입니다.. ├── babel.config.js ├── node_modules ├── package.json ├── package-lock.json ├── public ├── README.md └── src ├── App.vue ├── assets │ └── logo.png ├── components │ └── HelloWorld.vue └── main.js
- I have created a sample SVG to use in the interactive examples provided.. You may go ahead and download it by clicking this link.
You may choose to rename the file, then proceed to add it to the root of the src/assets
folder, such that the structure of the src
folder is similar to the one below:
. ├── App.vue ├── assets │ ├── logo.png │ └── sample.svg ├── components │ └── HelloWorld.vue └── main.js
인라인 SVG
When using this method you include the svg
directly in your markup. It's important to mention that when the svg
is directly embedded in the document or template as in the case of Vuejs ,there is no need to include the xlmns
attribute.
The pros of using this method are that you can use CSS to style your svg
and use Javascript to extend its functionality just as you would a normal HTML element.
The main drawback of this method is that if your svg
is large or when you have a lot of svg
your template, your template becomes cluttered. In that case it would be better incorporate SVGs as standalone files as it is explained in the next section.
외부 SVG
To embed an external SVG in your Vuejs template you use the methods listed below and always ensure that the xlmns
attribute is included in the root element of the SVG otherwise none of the methods provided will work!
💡
xmlns="http://www.w3.org/2000/svg"
(i) Vuejs 템플릿에 외부 svg를 이미지 요소로 포함합니다.주의:
<file-name>
위에서 다운로드한svg 자원의 유일한 이름으로 바꿉니다.이 방법을 사용하면 문서에 실제로 존재하지 않지만
svg
요소에 봉인되어 있기 때문에 동작<img>
을 제한할 수 있습니다.그래서 보통 그림처럼 처리할 수밖에 없어요.이러한 방법의 단점은 스타일 설정과 SVG 기능 확장에 대한 제한을 포함하고, 템플릿에 SVG가 많으면 이미지 요소에 포장하는 것이 상당히 번거롭다는 것이다.
(ii) 사용
SVG Loaders
Vuejs는 Webpack을 자산 바인딩기로 사용합니다.Webpack은 각 파일 유형에 대해 로드 프로그램을 사용합니다.일반적으로 Vue CLI를 사용하여 프로젝트를 부트할 때마다 일반적인 파일 유형의 로더가 미리 구성됩니다.이것은 이 파일 형식을 가져올 때 자동으로 읽을 수 있다는 것을 의미합니다.불행하게도 .svg
마운트가 미리 설정되지 않았기 때문에 npm에서 다운로드한 다음 수동으로 설정해야 합니다.npm에는 svg vuejs 불러오는 프로그램이 많이 있습니다.본 예에서 우리는 vue-svg-loader을 사용할 것이다.제공된 링크에는 설정 설명이 나열되어 있으며 Vuejs에 모듈을 설치하고 구성하지 않은 사용자는 다음 지침을 따릅니다.
다음 지침은 Vue CLI를 사용하여 부트하는 프로젝트에만 적용됩니다.
npm i -D vue-svg-loader vue-template-compiler
vue.config.js
파일을 생성하여 다음 코드를 복사하여 붙여넣습니다.module.exports = {
chainWebpack: (config) => {
const svgRule = config.module.rule('svg');
svgRule.uses.clear();
svgRule
.use('babel-loader')
.loader('babel-loader')
.end()
.use('vue-svg-loader')
.loader('vue-svg-loader');
},
};
변경 내용을 저장해야 합니다.축하합니다!!!🎊
vue-svg-loader
모듈의 설정을 성공적으로 설치하고 구성했습니다.이제
vue-svg-loader
모듈을 Vuejs에 SVG를 삽입하는 방법을 계속 배워보도록 하겠습니다.App.vue
디렉토리의 src
파일에서 모든 템플릿 코드를 삭제합니다.App.vue
에 복사하고 변경 사항을 저장합니다.svg
는 독립된 파일로 sample.svg
라는 자산 폴더에 존재합니다. 이것은 귀하가 자산에 이름을 붙인 내용에 달려 있습니다.svg 파일에서 위의 코드를 조정해야 할 수도 있습니다.http://localhost:8080/
에 접근하여 끼워넣는 SVG가 있는 Vuejs 프로그램을 보십시오🚀.npm run serve
이 방법을 사용하면 다음과 같은 이점이 있습니다.도구책
What are Scalable Vector Graphics (SVG) & how are they special? | Web Demystified Episode 4
Reference
이 문제에 관하여(Vuejs에서 SVG를 사용하면 간단해집니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jacqueline/using-svgs-in-vuejs-made-simple-2e1a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)