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 IssueTitle from './issue_title';
|
||||
import IssueTitle from './issue_title.vue';
|
||||
import '../vue_shared/vue_resource_interceptor';
|
||||
|
||||
const vueOptions = () => ({
|
||||
el: '.issue-title-entrypoint',
|
||||
components: {
|
||||
IssueTitle,
|
||||
},
|
||||
data() {
|
||||
const issueTitleData = document.querySelector('.issue-title-data').dataset;
|
||||
(() => {
|
||||
const issueTitleData = document.querySelector('.issue-title-data').dataset;
|
||||
const { initialTitle, endpoint } = issueTitleData;
|
||||
|
||||
return {
|
||||
initialTitle: issueTitleData.initialTitle,
|
||||
endpoint: issueTitleData.endpoint,
|
||||
};
|
||||
},
|
||||
template: `
|
||||
<IssueTitle
|
||||
:initialTitle="initialTitle"
|
||||
:endpoint="endpoint"
|
||||
/>
|
||||
`,
|
||||
});
|
||||
const vm = new Vue({
|
||||
el: '.issue-title-entrypoint',
|
||||
render: createElement => createElement(IssueTitle, {
|
||||
props: {
|
||||
initialTitle,
|
||||
endpoint,
|
||||
},
|
||||
}),
|
||||
});
|
||||
|
||||
(() => new Vue(vueOptions()))();
|
||||
return vm;
|
||||
})();
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
<script>
|
||||
import Visibility from 'visibilityjs';
|
||||
import Poll from './../lib/utils/poll';
|
||||
import Service from './services/index';
|
||||
|
@ -72,7 +73,9 @@ export default {
|
|||
created() {
|
||||
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
|
||||
|
||||
= page_specific_javascript_bundle_tag('common_vue')
|
||||
= page_specific_javascript_bundle_tag('issue_show')
|
||||
|
|
|
@ -125,6 +125,7 @@ var config = {
|
|||
'notebook_viewer',
|
||||
'pdf_viewer',
|
||||
'vue_pipelines',
|
||||
'issue_show',
|
||||
],
|
||||
minChunks: function(module, count) {
|
||||
return module.resource && (/vue_shared/).test(module.resource);
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import Vue from 'vue';
|
||||
import issueTitle from '~/issue_show/issue_title';
|
||||
import issueTitle from '~/issue_show/issue_title.vue';
|
||||
|
||||
describe('Issue Title', () => {
|
||||
let IssueTitleComponent;
|
||||
|
|
Loading…
Reference in New Issue