news-detail.js 1.17 KB
import { mapState } from "vuex";
import api from '@/api/api'
import {
	httpGet,
	httpPost
} from '@/api/fetch-api.js'

import { getDateYMD } from "@/utils/biz.js";
import { setTitle } from "@/utils/utils.js";

export default {
	data() {
		return {
			key: 'value',
			data: {
				title: "",
				content: "",
				dateFormat: "",
				pv: 0,
			},
			hadData: true
		}
	},
	computed: {
		...mapState({
			userInfo: state => state.userInfo
		}),
	},
	components: {},
	methods: {
		toNewsList() {
			// this.$router.push({
			// 	path: "/news/list"
			// })
			this.$router.go(-1);
		},
		initData() {
			let c = this.$route.query.c;
			let l = this.$i18n.locale;
			let params = {
				l: l,
				newsCode: c
			};
			httpGet({ url: api.newsDetail, data: params }).then(res => {
				if (!res) {
					this.hadData = false;
					return;
				}
				this.data.title = res.title;
				this.data.content = res.content;
				this.data.dateFormat = getDateYMD(res.createAt);
				this.data.pv = res.pv;

				if (this.data.title) {
					setTitle(this.data.title);
				}
			});
		}
	},
	mounted() {
		this.initData();
	},
	created() {
		document.documentElement.scrollTop = 0;
		document.body.scrollTop = 0;
	}
}