VUE 쓰기 페이지 :
1, 구성 요소에 iView 양식을 사용하여 양식 항목은 주어진 레이블 속성에 추가 : [뷰가 경고를해서] : 오류 렌더링 : "형식 오류 : 정의되지 않은 재산 '_t'을 읽을 수 없습니다"
그 이유는 다음과 같습니다 사용 iview.js 버전이 너무 낮은, 그것은 2.0 iview.js 교체
2, 덜 의존 추가, 이하 스타일을 편집 할 수 있습니다
package.json 중
devDependencies {
'이하': '2.7.2 ^' ,
'이하 로더' '^ 4.1.0'
}
(3)는 매우 얕은 아이 뷰 프레임 조립체 --Card 이유로 사용 : 최 index.html을가 폰트 크기를 설정한다은 (전형적으로 100 픽셀로 설정)
국경 스타일 어셈블리의 폭은 REM 수면을 제공하고 있기 때문에
( 함수 () { VAR 위한 availWidth = window.screen.width, 경우 (! 위한 availWidth)는 { 반환 0 ; } 위한 availWidth =위한 availWidth <1,920 1,920 :위한 availWidth; // 最小宽度1,920 VAR의 fontSize는 =에서는 parseFloat (1,920분의 100 *위한 availWidth, 10) .toFixed (2); var에 루트 = document.documentElement || 는 document.body; root.style.fontSize = fontSize는 + "픽셀" ; 반환 fontSize는이; }) ()
네, 일부 iView를 구성 요소 바인딩 클릭 이벤트가 유효하지 않습니다. 해결 방법 : @ click.native = "clickFun"
주로 사용자 지정 구성 요소에 대한 루트 요소의 .native- 기본 이벤트 리스너 구성 요소는 기본 이벤트를 추가합니다
< 카드 @ click.native = "addFun" > < 아이콘 타입 = '플러스 원' 크기 = "50" > </ 카드 >
5, 유효성 검사를 형성 :
(1) 형태의 라벨 결합 요소를 추가 : 모델
(2) 양식 항목 태그 속성 설정은 소품 및 속성 규칙을 설정
< 양식 REF = "addForm" : 모델 = "카드" > < 양식 항목 라벨 = "服务器名称" 소품 = "이름" : 규칙 = "validation.name" > < 입력 V 모델 = "card.name" > </ 양식 항목 > </ 양식 >
확인 : {
이름 : {
유형 : '문자열'pattern:/^(([1-9]\d{0,3})|0)(\.\d{0,2})?$/, message:
'数量应为正浮点数且不超过9999.99'
, trigger:
'blur'
}
}
(3) 전체 양식 유효성 검사, 매개 변수는 성공 또는 실패를 나타내는 부울 값을 반환 버튼 이벤트를 JS 제출
양식 목록 양식을 순환 경우,이. $ Refs.addForm는 [인덱스]를 필요
다음은이 . $ refs.addForm.validate (유효 => { IF (유효) { // 핸들 이벤트 } });
노드 인터페이스를 쓰기 :
아이디어 : 차단 인터페이스를 쓰기 : 아약스를 사용하여 게시물을 사용하거나 요청 인터페이스를 얻을, 읽기 JSON 파일의 FS에 노드를 사용하거나 쓰기 작업을, 그리고 마지막으로 프로젝트에 에이전트 인터페이스, 액세스 인터페이스
1, 노드의 HTTP 서비스 참조 : HTTPS : //www.cnblogs.com/xzsz/p/9066305.html
var에 conf의는 ( "../ conf_files"필요 = ) var에 응용 = 필요 (conf.app를); VAR HTTP =이 ( "HTTP")이 필요합니다; // 引入HTTP模块 var에 서버 = http.createServer (응용 프로그램); // 创建HTTP服务 server.listen (포트); server.on ( '오류' ,의 OnError); server.on은 ( , onListening '듣기');
2, 서면 인터페이스 참조 주소를 사용 : HTTPS : //blog.csdn.net/qq_43697072/article/details/86160770 https://www.jianshu.com/p/1d92463ebb69
경로가 여러 하위 경로를 사용 app.use (경로, 라우터)가있는 경우 // URL 주소 경로로 이동하는 경우,이 차단됩니다. 라우터 라우팅 개체는 다시 라우팅 경로 경로에 일치
VAR Express는 = 제 ( '익스프레스'를 필요로 ); var에 응용 = 익스프레스 (); const를 설정 = 요구] ( '../ 라우터 / 설정' ) app.use ( '/ getConfig'설정) // 라우터 라우팅 라우팅 개체 일치 / getConfig을 다시 라우팅된다
3 라우터 미들웨어 인터페이스 함수 작성 기준 주소를 사용 : HTTPS : //blog.csdn.net/haochangdi123/article/details/81480212
라우터와 라우팅 객체 미들웨어 고립 인스턴스 config.js
VAR 명시 =이 ( "표현"필요 ); var에 때 fs = (이하 "FS"를 필요로 ); var에 경로 =이 필요합니다 ( "경로" ); VAR의 라우터 = express.Router (); var에 설정 = './../conf_files/config.json'; // 注意"./" router.post ( '/ 추가' 기능 (REQ, 고해상도, 다음을) { //操作文件 })
HTTP : //nodejs.cn/api/fs.html#fs_fs_readfile_path_options_callback (4)의 FS 기준 노드 어드레스를 이용하여 파일 조작
(1) 파일의 내용을 읽어
fs.readFile(path[, options], callback)
fs.readFile (path.join (__ + dirname이 구성) 'UTF8' 기능 (ERR, 데이터) { IF (ERR) { 복귀 res.send (ERR)는 } // HTTP 응답 상태를 설정하고, 브라우저를 보낸다 데이터 res.status (200 ) .send (데이터); })
(2) 파일에 데이터를 기입
fs.writeFile (파일 데이터 [옵션, 콜백)
fs.readFile (path.join (__있는 dirname + 구성), 데이터 기능 (ERR) { 경우 (ERR) { 복귀 res.send (ERR) } CONSOLE.LOG에게 ( "文件已保存!" ) })
요청 된 콘텐츠의 파라미터를 획득하기 위해 5, 포스트 요청하지만 req.body 바디 파서 모듈 관련된 참조 문서의 사용을 필요 HTTPS : //www.jianshu.com/p/2cb44dbe5de8
req.query
: 같은 QueryString을 파싱 URL ?name=haha
, req.query
의 값 {name: 'haha'}
req.params
과 같은 분석 URL 자리 : /:name
액세스 /haha
, req.params
값 {name: 'haha'}
req.body
: 요청 체 관련 모듈은 체내 파서 사용해야 파싱 요청 체이며 {"name": "haha"}
의 req.body로 {name: 'haha'}
app.js VAR의 bodyParser = ( '신체 파서'요구 ); app.use (bodyParser.json ()); app.use (bodyParser.urlencoded는 ({연장 : 거짓 }))는 config.js var에 명시를 = 필요 ( "표현" ); var에 때 fs = (이하 "FS"를 필요로 ); var에 경로 =이 필요합니다 ( "경로" ); VAR의 라우터 = express.Router (); var에 설정 = './../conf_files/config.json'; // 注意"./" router.post ( '/ 추가' 기능 ) (REQ, 고해상도, 다음을 { PARAM하자 = req.body; // 请求体 })
6. 인터페이스는 인터페이스가 우체부 디버깅에 액세스 할 필요가 게시 로컬 액세스를 얻을 수