Issue Title Vue: convert to .vue - use 'render' with 'createElement' in index
This commit is contained in:
parent
309bab4310
commit
8918433af6
|
@ -1,26 +1,20 @@
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import IssueTitle from './issue_title';
|
import IssueTitle from './issue_title.vue';
|
||||||
import '../vue_shared/vue_resource_interceptor';
|
import '../vue_shared/vue_resource_interceptor';
|
||||||
|
|
||||||
const vueOptions = () => ({
|
(() => {
|
||||||
el: '.issue-title-entrypoint',
|
const issueTitleData = document.querySelector('.issue-title-data').dataset;
|
||||||
components: {
|
const { initialTitle, endpoint } = issueTitleData;
|
||||||
IssueTitle,
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
const issueTitleData = document.querySelector('.issue-title-data').dataset;
|
|
||||||
|
|
||||||
return {
|
const vm = new Vue({
|
||||||
initialTitle: issueTitleData.initialTitle,
|
el: '.issue-title-entrypoint',
|
||||||
endpoint: issueTitleData.endpoint,
|
render: createElement => createElement(IssueTitle, {
|
||||||
};
|
props: {
|
||||||
},
|
initialTitle,
|
||||||
template: `
|
endpoint,
|
||||||
<IssueTitle
|
},
|
||||||
:initialTitle="initialTitle"
|
}),
|
||||||
:endpoint="endpoint"
|
});
|
||||||
/>
|
|
||||||
`,
|
|
||||||
});
|
|
||||||
|
|
||||||
(() => new Vue(vueOptions()))();
|
return vm;
|
||||||
|
})();
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
<script>
|
||||||
import Visibility from 'visibilityjs';
|
import Visibility from 'visibilityjs';
|
||||||
import Poll from './../lib/utils/poll';
|
import Poll from './../lib/utils/poll';
|
||||||
import Service from './services/index';
|
import Service from './services/index';
|
||||||
|
@ -72,7 +73,9 @@ export default {
|
||||||
created() {
|
created() {
|
||||||
this.fetch();
|
this.fetch();
|
||||||
},
|
},
|
||||||
template: `
|
|
||||||
<h2 class='title' v-html='title'></h2>
|
|
||||||
`,
|
|
||||||
};
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<h2 class="title" v-html="title"></h2>
|
||||||
|
</template>
|
|
@ -79,4 +79,5 @@
|
||||||
|
|
||||||
= render 'shared/issuable/sidebar', issuable: @issue
|
= render 'shared/issuable/sidebar', issuable: @issue
|
||||||
|
|
||||||
|
= page_specific_javascript_bundle_tag('common_vue')
|
||||||
= page_specific_javascript_bundle_tag('issue_show')
|
= page_specific_javascript_bundle_tag('issue_show')
|
||||||
|
|
|
@ -125,6 +125,7 @@ var config = {
|
||||||
'notebook_viewer',
|
'notebook_viewer',
|
||||||
'pdf_viewer',
|
'pdf_viewer',
|
||||||
'vue_pipelines',
|
'vue_pipelines',
|
||||||
|
'issue_show',
|
||||||
],
|
],
|
||||||
minChunks: function(module, count) {
|
minChunks: function(module, count) {
|
||||||
return module.resource && (/vue_shared/).test(module.resource);
|
return module.resource && (/vue_shared/).test(module.resource);
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import issueTitle from '~/issue_show/issue_title';
|
import issueTitle from '~/issue_show/issue_title.vue';
|
||||||
|
|
||||||
describe('Issue Title', () => {
|
describe('Issue Title', () => {
|
||||||
let IssueTitleComponent;
|
let IssueTitleComponent;
|
||||||
|
|
Loading…
Reference in New Issue