vue-resource를 사용하여 리소스에 CRUD를 수행하고 있습니다. 기사 태그. CUD의 경우 데이터와 함께 csrf 토큰을 보내야합니다. 내 서버 측 코드는 사용자 정의 HTTP 헤더 'X-CSRF-TOKEN'을 받아들이고 값을 확인합니다.동일한 Vue 구성 요소의 다른 옵션에서 참조/사용 속성
태그의 각 항목에 대해 태그 구성 요소를 만듭니다. CSRF 토큰 루트 인스턴스에서 제공 등과 같은 구성 요소에 태그를 바인더 제본되어 VUE-자원 문서에 따르면
<tr v-for="tag in tags" is="tag" :tag="tag" :token="token"></tr>
을 여기 템플릿
<template id="tag-template">
<tr>
<td>@{{ tag.id }}</td>
<td>@{{ tag.name }}</td>
<td>
<button type="button" class="btn btn-xs btn-outline green">Edit</button>
<button type="button" class="btn btn-xs btn-outline red" @click="deleteTag(tag,token)">Delete</button>
</td>
</tr>
</template>
, 나는 다음과 같은 헤더 맞춤 설정할 수 있습니다 : Vue.http.headers.common [ 'X-CSRF-TOKEN'] = 토큰; 구성 요소 설정에서이 머리글을 미리 설정할 수도 있습니다. 어떻게 다른 구성 요소 옵션에서 소품 사용할 수 있습니다,
Vue.component('tag', {
props: ['tag', 'token'],
template: '#tag-template',
methods: {
deleteTag: function (tag, token) {
// I don't want to repeat this line in my updateTag(), createTag() etc.
Vue.http.headers.common['X-CSRF-TOKEN'] = token;
this.$http.delete('/api/tags/' + tag.id).then(
function() {
vm.tags.$remove(tag);
},
function() {}
);
}
},
http: {
headers: {
// how to reference/use prop 'token' here?
'X-CSRF-TOKEN': 'token from prop list'
}
}
});
질문은 :
아래의 코드 내가 달성하고자하는 무엇인가?
감사합니다.
내 구성 요소, 특히 다른 옵션 개체의 루트 인스턴스 데이터 필드를 어떻게 참조 할 수 있습니까? 나는''X-CSRF-TOKEN ': vm.token'과 같은 것을 시도했지만 행운이 없다. (나는 변수 인스턴스에 root 인스턴스를 할당한다.) – Carter
마찬가지로, 전역 변수 – gurghet