vue의 온라인 유료 강좌(자세한 튜토리얼)
이 글은 주로 Vue를 기반으로 개발된 온라인 유료 강좌의 신청 과정을 소개합니다. 매우 훌륭하고 참고할만한 가치가 있습니다. 도움이 필요한 친구들이 참고할 수 있습니다
vux UI 컴포넌트 라이브러리를 사용하세요
vue-navigation을 사용하세요. 페이지를 캐시하기 위해 이 라이브러리는 기본 앱 탐색과 마찬가지로 앞으로 새로 고침 및 뒤로 읽기 캐시 기능을 구현합니다. 서브라우팅을 이용하여 탭바를 구현하는데 버그가 있었는데, vuex를 이용해서 해결했습니다.
lib-flexible을 사용하여 모바일 페이지 적응을 해결하세요
목록을 만들어 보세요
"dependencies": { "fastclick": "^1.0.6", "lib-flexible": "^0.3.2", "lodash": "^4.17.4", "vue": "^2.5.2", "vue-navigation": "^1.1.3", "vue-router": "^3.0.1", "vuex": "^2.1.1", "vuex-i18n": "^1.3.1", "vux": "^2.7.8" }
WeChat 로그인
애플리케이션에 로그인해야 액세스할 수 있는 기능입니다. 어떤 링크에서든 들어가 로그인 여부를 확인하고, 로그인되지 않은 경우 위챗 인증으로 이동하고, 성공 후 사전 로그인 링크로 돌아가는 것입니다. PHP에 대한 위챗 인증이 더 많이 이루어지기 때문에 위챗 인증은 에서 구현됩니다. PHP 구현 과정은 다음과 같습니다. 라우팅 방법은 히스토리 모드를 사용하며, 패키지된 index.html 파일은 PHP를 사용하여 렌더링됩니다. 라우팅 경로는 통합 형식 r/xxxx를 정의하므로 이 형식의 라우팅이 index.html 렌더링 방법과 일치하는 한 PHP 측 라우팅이 일치할 수 있습니다. 그렇지 않으면 404 오류가 표시됩니다. 서버에 접속할 때.
php 측 라우팅 구성, 이것은 laravel이며 다른 프레임워크도 유사해야 합니다
Route::get('/', 'HomeController@index')->middleware('auth')->name("home"); Route::get('/r/{query}', 'HomeController@index')->middleware('auth')->name("home");
해시 모드를 사용하지 않는 이유는 해시 모드를 사용하여 소스 주소를 얻을 때 PHP는 # 다음에 매개변수를 가져올 수 없기 때문입니다. 매개 변수 백엔드가 매우 번거로워서 후속 결제 및 공유에도 동일하게 적용됩니다.
모든 링크 열기 xxx.com/r/xxx
-
먼저 통과하세요. PHP 측에서 경로를 일치시키세요. 일치하지 않으면 페이지를 찾을 수 없습니다~
일치가 성공하면 로그인이 되지 않은 것으로 판단됩니다. 점프하기 전에 현재 링크를 기록하세요. 로그인에 성공하면 기록된 링크가 반환됩니다
사용자 로그인 상태는 토큰을 사용하며 토큰은 index.html 페이지에 정의되어 있습니다
<script> var TOKEN = '{{$token}}';//php模板变量 var HOST = 'http://read.xxx.com';//程序api接口域名 var INURL = location.href //页面域名(在ios自定义分享时候会用到) </script>
로그인 후 복사
WeChat 결제
WeChat 결제에서 해결해야 할 것은 경로 구성 문제입니다. 경로가 모두 r/xxxxx를 기반으로 하기 때문입니다. 형식은 양식에서 나오므로 http://xxx.xxxx만 입력하면 됩니다. com/r/에서 직접 결제가 필요한 페이지 매개변수를 전달할 때 쿼리 방법을 사용하세요. 그렇지 않으면 r 뒤에 디렉토리가 나타납니다. 예를 들어 r/goods/id/1은 r/goods?id=1로 대체되어야 합니다. 이렇게 하면 경로를 정의하는 한 전체 사이트에서 결제를 시작할 수 있습니다.
맞춤형 공유
이력 라우팅 모드를 사용하므로 iOS의 문제를 해결해야 합니다. 라우팅 점프 후 Android는 정상적으로 현재 경로를 찾을 수 있습니다. 따라서 Android는 현재 경로를 사용하여 서명하고 iOS는 처음 열린 페이지의 경로를 사용하여 서명한다는 점에 유의해야 합니다. 그렇기 때문에 라우팅 초기화 전 처음으로 애플리케이션을 열기 위한 경로를 정의해야 합니다. index.html에 로그인하는 구체적인 방법입니다. axioskey code
let http = axios.create({ baseURL: HOST + '/api/', timeout: 10000, headers: { 'Accept': 'application/json', 'Authorization': 'Bearer ' + TOKEN, 'InUrl': INURL,//传第一次打开页面的链接 'IsIos': isiOS//传是否ios } })
백그라운드에서 3개
$is_ios = request()->header('IsIos');//获取是否ios $in_url = request()->header('InUrl');//获取第一次打开页面路径 $in_url = explode("#", $in_url)[0];//处理一下 if ($is_ios == 'true') { $url = $in_url;//ios用第一次打开页面路径签名 } else { $url = url()->previous();//安卓就用请求这个接口的路径去签名 } //用url去签名吧
시그니처 받은 후 어떻게 초기화하나요?
this.$wechat.config(res.data.wx_config)
제공됩니다. by vux
애플리케이션은 페이지 캐싱을 사용하므로 사용자 정의 공유 데이터를 정의하는 코드를 활성화된 상태에서 실행해야 합니다. 이를 구현하려면 먼저 init=false
마운트를 정의하고 서명을 얻기 위한 데이터 요청을 시작하세요
this.$wechat.config(res.data.wx_config) this.$wechat.ready(() => { this.set_share() })
Define
set_share () { // 自定义分享到朋友圈 this.$wechat.onMenuShareTimeline({ title: this.share.title, link: this.share.url, imgUrl: this.share.icon, success: () => {} }) this.$wechat.onMenuShareAppMessage({ title: this.share.title, desc: this.share.desc, link: this.share.url, imgUrl: this.share.icon }) }
activated 메소드의 메소드는
activated () { this.set_share() }
keep-alive 구성 요소가 활성화될 때 사용자 정의 공유 데이터를 재설정하도록 정의합니다. 그렇지 않으면 반환 전 페이지도 사용자 정의 공유로 예약되어 있고 반환 후 페이지가 새로 고쳐지지 않는 경우, 공유 데이터는 이전의 데이터이므로 여기서 다시 정의하면 됩니다.
위 내용은 제가 여러분을 위해 정리한 내용입니다. 앞으로 도움이 되길 바랍니다.
관련 기사:
바이두 지도를 사용하여 지도 그리드를 구현하는 방법 셀레늄을 사용하여 Taobao 데이터 정보 캡처JS의 명령 모드 개념 및 사용법(자세한 튜토리얼)WeChat 애플릿 방법 Promise를 사용하여 콜백을 구현하려면?위 내용은 vue의 온라인 유료 강좌(자세한 튜토리얼)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











vue.js에서 JS 파일을 참조하는 세 가지 방법이 있습니다. & lt; script & gt; 꼬리표;; mounted () 라이프 사이클 후크를 사용한 동적 가져 오기; Vuex State Management Library를 통해 수입.

vue.js에서 게으른 로딩을 사용하면 필요에 따라 부품 또는 리소스를 동적으로로드 할 수 있으므로 초기 페이지로드 시간을 줄이고 성능을 향상시킵니다. 특정 구현 방법에는 & lt; keep-alive & gt를 사용하는 것이 포함됩니다. & lt; 구성 요소는 & gt; 구성 요소. 게으른 하중은 FOUC (Splash Screen) 문제를 일으킬 수 있으며 불필요한 성능 오버 헤드를 피하기 위해 게으른 하중이 필요한 구성 요소에만 사용해야합니다.

vue.js의 시계 옵션을 사용하면 개발자가 특정 데이터의 변경 사항을들을 수 있습니다. 데이터가 변경되면 콜백 기능을 트리거하여 업데이트보기 또는 기타 작업을 수행합니다. 구성 옵션에는 즉시 콜백을 실행할지 여부와 DEEP를 지정하는 즉시 포함되며, 이는 객체 또는 어레이에 대한 변경 사항을 재귀 적으로 듣는 지 여부를 지정합니다.

vue.js에서 bootstrap 사용은 5 단계로 나뉩니다 : Bootstrap 설치. main.js.의 부트 스트랩 가져 오기 부트 스트랩 구성 요소를 템플릿에서 직접 사용하십시오. 선택 사항 : 사용자 정의 스타일. 선택 사항 : 플러그인을 사용하십시오.

Vue DevTools를 사용하여 브라우저 콘솔에서 vue 탭을 보면 VUE 버전을 쿼리 할 수 있습니다. npm을 사용하여 "npm list -g vue"명령을 실행하십시오. package.json 파일의 "종속성"객체에서 vue 항목을 찾으십시오. Vue Cli 프로젝트의 경우 "vue -version"명령을 실행하십시오. & lt; script & gt에서 버전 정보를 확인하십시오. vue 파일을 나타내는 html 파일의 태그.

vue.js는 이전 페이지로 돌아갈 수있는 네 가지 방법이 있습니다. $ router.go (-1) $ router.back () 사용 & lt; router-link to = & quot;/quot; Component Window.history.back () 및 메소드 선택은 장면에 따라 다릅니다.

CSS 애니메이션 또는 타사 라이브러리를 사용하여 VUE에서 Marquee/Text Scrolling Effects를 구현하십시오. 이 기사는 CSS 애니메이션 사용 방법을 소개합니다. & lt; div & gt; CSS 애니메이션을 정의하고 오버플로를 설정하십시오 : 숨겨진, 너비 및 애니메이션. 키 프레임을 정의하고 변환을 설정하십시오 : Translatex () 애니메이션의 시작과 끝에서. 지속 시간, 스크롤 속도 및 방향과 같은 애니메이션 속성을 조정하십시오.

HTML 템플릿의 버튼을 메소드에 바인딩하여 VUE 버튼에 함수를 추가 할 수 있습니다. 메소드를 정의하고 VUE 인스턴스에서 기능 로직을 작성하십시오.
