WAYS OF USING VUE
Js
U
V
E
Indicator: NhanHV
What Is Vue.Js?
Vue.js is a JavaScript framework for
building user interfaces (UIs) and single-
page applications (SPAs).
- Vue.js uses a Model-View-ViewModel
(MVVM) architecture.
- Its ability to extend HTML attributes
using directives.
July 9, 2023
Vue was created and developed by Evan You while he
was an engineer at Google
1. What Is Vue.Js?
2. Advantages and disadvantages
3. Ways of using Vue
PROBLEM
July 9, 2023
- VERY SMALL SIZE
- FLEXIBILITY
- SIMPLISTIC APPROACH
- FOCUS
- DETAILED DOCUMENTATION
- REACTIVITY
- COPYING COMPETITORS
- TWO-WAY COMMUNICATION
ADVANTAGES
July 9, 2023
DISADVANTAGES
July 9, 2023
- A CLOSED COMMUNITY DEVELOPMENT
- LACK OF SUPPORT FOR LARGE PROJECTS
- BEING TOO FLEXIBLE CAN BE PROBLEMATIC
- LANGUAGE BARRIERS
- LACK OF EXPERIENCED DEVELOPERS
1DEALING WITH PROTOTYPES (WITHOUT TOO
MUCH SKILL)
2KEEPING THE FOCUS ON UI
3INTEGRATION DEMAND
WHAT IS VUE USED FOR?
July 9, 2023
July 9, 2023 Pitch deck
DEPENDING ON YOUR USE CASE, VUE CAN BE USED IN DIFFERENT
WAYS TO STRIKE THE OPTIMAL BALANCE BETWEEN STACK
COMPLEXITY, DEVELOPER EXPERIENCE AND END PERFORMANCE.
July 9, 2023
STANDALONE SCRIPT
July 9, 2023
 Vue can be used as a standalone script file - no build step required!
Can be used without a build step. Simply load it from a
CDN:
• Use to mark regions on the page that should be
controlled by .v-scope petite-vue
• The attribute makes the script execute after HTML
content is parsed .defer
• The attribute tells to automatically query and initialize
all elements that have on the page. init petite-vuev-
scope
petite-vue
EMBEDDED WEB COMPONENTS
July 9, 2023
 The resulting web components can be embedded in legacy applications, static HTML, or even
applications built with other frameworks.
 Vue supports creating custom elements
using exactly the same Vue component
APIs via the defineCustomElement
method.
 The method accepts the same argument
as defineComponent, but instead returns
a custom element constructor that
extends: HTMLElement
Can be embedded in any HTML page
SINGLE-PAGE APPLICATION (SPA)
July 9, 2023
A single-page application (SPA) is a web application or website that interacts
with the user by dynamically rewriting the current web page with new data
from the web server, instead of the default method of a web browser loading
entire new pages. The goal is faster transitions that make the website feel
more like a native app.
Web browser JavaScript frameworks and libraries, such as AngularJS, Ember.js, ExtJS,
Knockout.js, Meteor.js, React, Vue.js, and Svelte have adopted SPA principles.
FULLSTACK / SSR
July 9, 2023
Vue.js is a framework for building client-side applications. By default, Vue
components produce and manipulate DOM in the browser as output.
However, it is also possible to render the same components into HTML strings
on the server, send them directly to the browser, and finally "hydrate" the
static markup into a fully interactive app on the client.
VUE SSR SSR - Server-Side Rendering
July 9, 2023
1. Create a new directory and into it -cd
2. Run npm init -y
3. Add in so that Node.js runs in ES modules mode.
"type": "module“ package.json.
4. Run npm install vue
We can then move the Vue SSR code into a server request
handler, which wraps the application markup with the full page
HTML. We will be using express for the next steps:
5. Run npm install express
6. Create the following file: server.js
Finally, run: node server.js . You should see the page
working with the button. http://localhost:3000
JAMSTACK / SSG
July 9, 2023
• We can pre-render an entire application into HTML and serve them as static
files. This improves site performance and makes deployment a lot simpler since
we no longer need to dynamically render pages on each request.
• This technique is commonly referred to as Static-Site Generation (SSG), also
known as JAMStack.
• The Vue team also maintains a static-site generator called VitePress
(SSG - Static-Site Generation)
VitePress
VuePress
BEYOND THE WEB
July 9, 2023
 Build desktop apps with Electron or Tauri
 Build mobile apps with Ionic Vue
 Build desktop and mobile apps from the same codebase with Quasar
 Use Vue's Custom Renderer API to build custom renderers
targeting WebGL or even the terminal!
THANK YOU
July 9, 2023
July 9, 2023 Pitch deck

What is Vuejs.pptx

  • 1.
    WAYS OF USINGVUE Js U V E Indicator: NhanHV
  • 2.
    What Is Vue.Js? Vue.jsis a JavaScript framework for building user interfaces (UIs) and single- page applications (SPAs). - Vue.js uses a Model-View-ViewModel (MVVM) architecture. - Its ability to extend HTML attributes using directives. July 9, 2023 Vue was created and developed by Evan You while he was an engineer at Google
  • 3.
    1. What IsVue.Js? 2. Advantages and disadvantages 3. Ways of using Vue PROBLEM July 9, 2023
  • 4.
    - VERY SMALLSIZE - FLEXIBILITY - SIMPLISTIC APPROACH - FOCUS - DETAILED DOCUMENTATION - REACTIVITY - COPYING COMPETITORS - TWO-WAY COMMUNICATION ADVANTAGES July 9, 2023
  • 5.
    DISADVANTAGES July 9, 2023 -A CLOSED COMMUNITY DEVELOPMENT - LACK OF SUPPORT FOR LARGE PROJECTS - BEING TOO FLEXIBLE CAN BE PROBLEMATIC - LANGUAGE BARRIERS - LACK OF EXPERIENCED DEVELOPERS
  • 6.
    1DEALING WITH PROTOTYPES(WITHOUT TOO MUCH SKILL) 2KEEPING THE FOCUS ON UI 3INTEGRATION DEMAND WHAT IS VUE USED FOR? July 9, 2023
  • 7.
    July 9, 2023Pitch deck
  • 8.
    DEPENDING ON YOURUSE CASE, VUE CAN BE USED IN DIFFERENT WAYS TO STRIKE THE OPTIMAL BALANCE BETWEEN STACK COMPLEXITY, DEVELOPER EXPERIENCE AND END PERFORMANCE. July 9, 2023
  • 9.
    STANDALONE SCRIPT July 9,2023  Vue can be used as a standalone script file - no build step required! Can be used without a build step. Simply load it from a CDN: • Use to mark regions on the page that should be controlled by .v-scope petite-vue • The attribute makes the script execute after HTML content is parsed .defer • The attribute tells to automatically query and initialize all elements that have on the page. init petite-vuev- scope petite-vue
  • 10.
    EMBEDDED WEB COMPONENTS July9, 2023  The resulting web components can be embedded in legacy applications, static HTML, or even applications built with other frameworks.  Vue supports creating custom elements using exactly the same Vue component APIs via the defineCustomElement method.  The method accepts the same argument as defineComponent, but instead returns a custom element constructor that extends: HTMLElement Can be embedded in any HTML page
  • 11.
    SINGLE-PAGE APPLICATION (SPA) July9, 2023 A single-page application (SPA) is a web application or website that interacts with the user by dynamically rewriting the current web page with new data from the web server, instead of the default method of a web browser loading entire new pages. The goal is faster transitions that make the website feel more like a native app. Web browser JavaScript frameworks and libraries, such as AngularJS, Ember.js, ExtJS, Knockout.js, Meteor.js, React, Vue.js, and Svelte have adopted SPA principles.
  • 12.
    FULLSTACK / SSR July9, 2023 Vue.js is a framework for building client-side applications. By default, Vue components produce and manipulate DOM in the browser as output. However, it is also possible to render the same components into HTML strings on the server, send them directly to the browser, and finally "hydrate" the static markup into a fully interactive app on the client. VUE SSR SSR - Server-Side Rendering
  • 13.
    July 9, 2023 1.Create a new directory and into it -cd 2. Run npm init -y 3. Add in so that Node.js runs in ES modules mode. "type": "module“ package.json. 4. Run npm install vue We can then move the Vue SSR code into a server request handler, which wraps the application markup with the full page HTML. We will be using express for the next steps: 5. Run npm install express 6. Create the following file: server.js Finally, run: node server.js . You should see the page working with the button. http://localhost:3000
  • 14.
    JAMSTACK / SSG July9, 2023 • We can pre-render an entire application into HTML and serve them as static files. This improves site performance and makes deployment a lot simpler since we no longer need to dynamically render pages on each request. • This technique is commonly referred to as Static-Site Generation (SSG), also known as JAMStack. • The Vue team also maintains a static-site generator called VitePress (SSG - Static-Site Generation) VitePress VuePress
  • 15.
    BEYOND THE WEB July9, 2023  Build desktop apps with Electron or Tauri  Build mobile apps with Ionic Vue  Build desktop and mobile apps from the same codebase with Quasar  Use Vue's Custom Renderer API to build custom renderers targeting WebGL or even the terminal!
  • 16.
  • 17.
    July 9, 2023Pitch deck

Editor's Notes

  • #3 Vue.js là một khung JavaScript để xây dựng giao diện người dùng (UI) và các ứng dụng một trang (SPAs), Vue.js sử dụng kiến trúc model-view-viewmodel (MVVM). Mô hình kiến trúc này phân tách mối quan tâm giữa chế độ xem đại diện cho giao diện người dùng và mô hình đại diện cho logic kinh doanh của ứng dụng Vue.js. Thư viện cốt lõi của nó chỉ tập trung vào lớp view. Bằng cách này, các nhà phát triển bắt đầu với yếu tố cơ bản nhất của giao diện người dung. Khả năng mở rộng các thuộc tính HTML bằng cách sử dụng các chỉ thị, Thông qua các chỉ thị, các đối tượng .js Vue có thể liên kết với các phần tử HTML và thao tác với mô hình đối tượng tài liệu (DOM). DOM là một giao diện lập trình ứng dụng (API) kiểm soát cách các nhà phát triển truy cập và thao tác các tài liệu HTML và XML. Model-View-Viewmodel (MVVM): sử dụng cho các ứng dụng dùng ngôn ngữ XML View: Tương tự như trong mô hình MVC, View là phần giao diện của ứng dụng để hiển thị dữ liệu và nhận tương tác của người dùng. Một điểm khác biệt so với các ứng dụng truyền thống là View trong mô hình này tích cực hơn. Nó có khả năng thực hiện các hành vi và phản hồi lại người dùng thông qua tính năng binding, command. Model: Cũng tương tự như trong mô hình MVC. Model là các đối tượng giúp truy xuất và thao tác trên dữ liệu thực sự. ViewModel: Lớp trung gian giữa View và Model. ViewModel có thể được xem là thành phần thay thế cho Controller trong mô hình MVC. Nó chứa các mã lệnh cần thiết để thực hiện data binding, command.
  • #5 Kích thước rất nhỏ Linh hoạt Cách tiếp cận đơn giản Chú trọng Tài liệu chi tiết Khả năng phản ứng Sao chép đối thủ cạnh tranh Giao tiếp hai chiều
  • #6 Một cộng đồng phát triển khép kín Thiếu hỗ trợ cho các dự án lớn Quá linh hoạt có thể có vấn đề Những kẻ xâm lược trong tương lai Rào cản ngôn ngữ
  • #7 Xử lý nguyên mẫu (không cần quá nhiều kỹ năng) Đầu tiên và quan trọng nhất, Vue.js được thiết kế để tạo mẫu. Với tính năng liên kết dữ liệu thích hợp, việc xử lý rất nhiều hoạt ảnh, yếu tố tương tác và đồ họa cũng rất tuyệt vời. Tìm hiểu giao diện người dùng của bạn, cài đặt Vue CLI và bạn có thể sử dụng các nguyên mẫu có thể nhấp được. Tập trung vào giao diện người dùng Vue.js tập trung chắc chắn vào giao diện người dùng, vì nó chỉ yêu cầu HTML, CSS và JS hoạt động với nó mà không cần quá nhiều thứ dành riêng cho Vue. Ví dụ: IBM đã sử dụng Vue làm khuôn khổ giao diện người dùng cho Đám mây lai của nó , vì đường cong học tập nhẹ, nhẹ nhàng và phụ thuộc vào HTML, CSS và JS. Nhu cầu tích hợp Nếu bạn có một ứng dụng hiện có và bạn muốn thêm một số tương tác vào ứng dụng đó, Vue có thể giúp bạn điều đó. Vì nó dựa trên JavaScript nên nó có thể được tích hợp dễ dàng vào bất kỳ dự án nào bằng JS. Hơn nữa, nó tương thích với nhiều công nghệ và khuôn khổ back-end như Laravel, Express, Rails và Django. Ngoài ra, hãy thêm vào đây tính dễ học để đề cập đến khía cạnh đào tạo nhóm.
  • #9 Tùy thuộc vào trường hợp sử dụng của bạn, Vue có thể được sử dụng theo những cách khác nhau để đạt được sự cân bằng tối ưu giữa độ phức tạp của ngăn xếp, trải nghiệm của nhà phát triển và hiệu suất cuối.
  • #10 Tập lệnh độc lập Vue có thể được sử dụng như một tệp tập lệnh độc lập - không cần bước xây dựng! Nếu bạn có một framework backend đã hiển thị hầu hết HTML hoặc logic frontend của bạn không đủ phức tạp để biện minh cho một bước xây dựng, đây là cách dễ nhất để tích hợp Vue vào ngăn xếp của bạn. Bạn có thể nghĩ về Vue như một sự thay thế khai báo hơn của jQuery trong những trường hợp như vậy. Vue cũng cung cấp một bản phân phối thay thế được gọi là petite-vue được tối ưu hóa đặc biệt để tăng cường dần HTML hiện có. Nó có một bộ tính năng nhỏ hơn, nhưng cực kỳ nhẹ và sử dụng một triển khai hiệu quả hơn trong các tình huống không có bước xây dựng. Chỉ cần tải nó từ CDN: Sử dụng để đánh dấu các vùng trên trang cần được kiểm soát bởi .v-scope small-vue Thuộc tính làm cho tập lệnh thực thi sau khi nội dung HTML được phân tích cú pháp .defer Thuộc tính yêu cầu tự động truy vấn và khởi tạo tất cả các phần tử có trên trang. Init small-vuev-scope
  • #11 Cấu phần Web được nhúng Bạn có thể sử dụng Vue để xây dựng các Thành phần Web tiêu chuẩn có thể được nhúng trong bất kỳ trang HTML nào, bất kể chúng được hiển thị như thế nào. Tùy chọn này cho phép bạn tận dụng Vue theo cách hoàn toàn bất khả tri với người tiêu dùng: các thành phần web kết quả có thể được nhúng trong các ứng dụng cũ, HTML tĩnh hoặc thậm chí các ứng dụng được xây dựng với các khuôn khổ khác. Vue hỗ trợ tạo các phần tử tùy chỉnh bằng cách sử dụng chính xác các API thành phần Vue giống nhau thông qua phương thức defineCustomElement. Phương thức chấp nhận cùng một đối số như defineComponent, nhưng thay vào đó trả về một hàm tạo phần tử tùy chỉnh mở rộng: HTMLElement
  • #12 Ứng dụng một trang (SPA) là một khung JavaScript để phân phối chức năng ứng dụng trên web. Trước khi giới thiệu các ứng dụng một trang, các ứng dụng đã được xây dựng và hiển thị ở phía máy chủ và được phân phối - ở dạng hoàn chỉnh - tới thiết bị khách: khi người dùng điều hướng qua ứng dụng, mỗi trang được tạo từ đầu và vì vậy cần phải được làm mới liên tục, dẫn đến màn hình 'nhấp nháy'. Các ứng dụng web sử dụng nhiều dữ liệu, lấy dữ liệu từ nhiều nguồn khác nhau, cũng có thể tải chậm. Ứng dụng một trang (SPA) là một ứng dụng web hoặc trang web tương tác với người dùng bằng cách tự động viết lại trang web hiện tại với dữ liệu mới từ máy chủ web, thay vì phương pháp mặc định là trình duyệt web tải toàn bộ trang mới. Mục tiêu là chuyển đổi nhanh hơn làm cho trang web cảm thấy giống như một ứng dụng gốc hơn. Các framework và thư viện JavaScript của trình duyệt web, chẳng hạn như AngularJS, Ember.js, ExtJS, Knockout.js, Meteor.js, React, Vue.js và Svelte đã áp dụng các nguyên tắc SPA. Ngoài ExtJS, tất cả những thứ này đều miễn phí.
  • #13 SSR - Kết xuất phía máy chủ Vue.js là một framework để xây dựng các ứng dụng phía máy khách. Theo mặc định, các thành phần Vue sản xuất và thao tác DOM trong trình duyệt dưới dạng đầu ra. Tuy nhiên, cũng có thể kết xuất các thành phần giống nhau thành các chuỗi HTML trên máy chủ, gửi chúng trực tiếp đến trình duyệt và cuối cùng là "hydrate hóa" đánh dấu tĩnh thành một ứng dụng tương tác hoàn toàn trên máy khách.
  • #14 Sau đó, chúng tôi có thể di chuyển mã Vue SSR vào một trình xử lý yêu cầu máy chủ, trình xử lý này bao bọc đánh dấu ứng dụng bằng HTML trang đầy đủ. Chúng tôi sẽ sử dụng express cho các bước tiếp theo:
  • #15 SSG - Tạo trang web tĩnh Chúng ta có thể kết xuất trước toàn bộ ứng dụng sang HTML và phân phát chúng dưới dạng tệp tĩnh. Điều này cải thiện hiệu suất trang web và làm cho việc triển khai đơn giản hơn rất nhiều vì chúng ta không còn cần phải hiển thị động các trang theo từng yêu cầu. Nhóm Vue cũng duy trì một trình tạo trang web tĩnh có tên VitePress.