Merge branch 'master' into deploy
						commit
						1b96709250
					
				|  | @ -0,0 +1,33 @@ | |||
| --- | ||||
| name: Bug report(报告问题) | ||||
| about: Create a report to help us improve | ||||
| --- | ||||
| <!-- | ||||
|     注意:为更好的解决你的问题,请参考模板提供完整信息,准确描述问题,信息不全的 issue 将被关闭。 | ||||
| 
 | ||||
|     Note: In order to better solve your problem, please refer to the template to provide complete information, accurately describe the problem, and the incomplete information issue will be closed. | ||||
| --> | ||||
| 
 | ||||
| 
 | ||||
| ## Bug report(问题描述) | ||||
| 
 | ||||
| #### Steps to reproduce(问题复现步骤) | ||||
| <!-- | ||||
| 1. [xxx] | ||||
| 2. [xxx] | ||||
| 3. [xxxx] | ||||
| --> | ||||
| 
 | ||||
| #### Screenshot or Gif(截图或动态图) | ||||
| 
 | ||||
| 
 | ||||
| #### Link to minimal reproduction(最小可在线还原demo) | ||||
| 
 | ||||
| <!-- | ||||
| Please only use Codepen, JSFiddle, CodeSandbox or a github repo | ||||
| --> | ||||
| 
 | ||||
| #### Other relevant information(格外信息) | ||||
| - Your OS: | ||||
| - Node.js version: | ||||
| - vue-element-admin version: | ||||
|  | @ -0,0 +1,7 @@ | |||
| --- | ||||
| name: Feature Request(新功能建议) | ||||
| about: Suggest an idea for this project | ||||
| --- | ||||
| 
 | ||||
| ## Feature request(新功能建议) | ||||
| 
 | ||||
|  | @ -0,0 +1,14 @@ | |||
| --- | ||||
| name: Question(提问) | ||||
| about: Asking questions about use | ||||
| --- | ||||
| 
 | ||||
| ## Question(提问) | ||||
| 
 | ||||
| <!-- | ||||
|     提问之前,请确定你已经过自己的努力,尝试解决过这个问题。 | ||||
|     若是代码相关问题,请不要只截图,请提供在线 demo,以便节约彼此的时间。 | ||||
| 
 | ||||
|     Before asking a question, please make sure that you have tried your best to solve this problem. | ||||
|     If it's a code-related issue, please don't just take screenshots. Please provide an online demo to save each other's time. | ||||
| --> | ||||
|  | @ -9,25 +9,25 @@ | |||
|     <el-dialog :visible.sync="dialogTableVisible" title="Error Log" width="80%"> | ||||
|       <el-table :data="errorLogs" border> | ||||
|         <el-table-column label="Message"> | ||||
|           <template slot-scope="scope"> | ||||
|           <template slot-scope="{row}"> | ||||
|             <div> | ||||
|               <span class="message-title">Msg:</span> | ||||
|               <el-tag type="danger"> | ||||
|                 {{ scope.row.err.message }} | ||||
|                 {{ row.err.message }} | ||||
|               </el-tag> | ||||
|             </div> | ||||
|             <br> | ||||
|             <div> | ||||
|               <span class="message-title" style="padding-right: 10px;">Info: </span> | ||||
|               <el-tag type="warning"> | ||||
|                 {{ scope.row.vm.$vnode.tag }} error in {{ scope.row.info }} | ||||
|                 {{ row.vm.$vnode.tag }} error in {{ row.info }} | ||||
|               </el-tag> | ||||
|             </div> | ||||
|             <br> | ||||
|             <div> | ||||
|               <span class="message-title" style="padding-right: 16px;">Url: </span> | ||||
|               <el-tag type="success"> | ||||
|                 {{ scope.row.url }} | ||||
|                 {{ row.url }} | ||||
|               </el-tag> | ||||
|             </div> | ||||
|           </template> | ||||
|  |  | |||
|  | @ -1,19 +1,19 @@ | |||
| <template> | ||||
|   <div class="navbar"> | ||||
|     <hamburger :is-active="sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" /> | ||||
|     <hamburger id="hamburger-container" :is-active="sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" /> | ||||
| 
 | ||||
|     <breadcrumb class="breadcrumb-container" /> | ||||
|     <breadcrumb id="breadcrumb-container" class="breadcrumb-container" /> | ||||
| 
 | ||||
|     <div class="right-menu"> | ||||
|       <template v-if="device!=='mobile'"> | ||||
|         <search class="right-menu-item" /> | ||||
|         <search class="right-menu-item header-search" /> | ||||
| 
 | ||||
|         <error-log class="errLog-container right-menu-item hover-effect" /> | ||||
| 
 | ||||
|         <screenfull class="right-menu-item hover-effect" /> | ||||
|         <screenfull id="screenfull" class="right-menu-item hover-effect" /> | ||||
| 
 | ||||
|         <el-tooltip :content="$t('navbar.size')" effect="dark" placement="bottom"> | ||||
|           <size-select class="right-menu-item hover-effect" /> | ||||
|           <size-select id="size-select" class="right-menu-item hover-effect" /> | ||||
|         </el-tooltip> | ||||
| 
 | ||||
|         <lang-select class="right-menu-item hover-effect" /> | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| <template> | ||||
|   <div class="tags-view-container"> | ||||
|   <div id="tags-view-container" class="tags-view-container"> | ||||
|     <scroll-pane ref="scrollPane" class="tags-view-wrapper"> | ||||
|       <router-link | ||||
|         v-for="tag in visitedViews" | ||||
|  |  | |||
|  | @ -11,9 +11,9 @@ | |||
|       </template> | ||||
|     </el-table-column> | ||||
|     <el-table-column label="Status" width="100" align="center"> | ||||
|       <template slot-scope="scope"> | ||||
|         <el-tag :type="scope.row.status | statusFilter"> | ||||
|           {{ scope.row.status }} | ||||
|       <template slot-scope="{row}"> | ||||
|         <el-tag :type="row.status | statusFilter"> | ||||
|           {{ row.status }} | ||||
|         </el-tag> | ||||
|       </template> | ||||
|     </el-table-column> | ||||
|  |  | |||
|  | @ -1,6 +1,6 @@ | |||
| <template> | ||||
|   <div class="dashboard-editor-container"> | ||||
|     <github-corner style="position: absolute; top: 0px; border: 0; right: 0;" /> | ||||
|     <github-corner class="github-corner" /> | ||||
| 
 | ||||
|     <panel-group @handleSetLineChartData="handleSetLineChartData" /> | ||||
| 
 | ||||
|  | @ -100,6 +100,15 @@ export default { | |||
| .dashboard-editor-container { | ||||
|   padding: 32px; | ||||
|   background-color: rgb(240, 242, 245); | ||||
|   position: relative; | ||||
| 
 | ||||
|   .github-corner { | ||||
|     position: absolute; | ||||
|     top: 0px; | ||||
|     border: 0; | ||||
|     right: 0; | ||||
|   } | ||||
| 
 | ||||
|   .chart-wrapper { | ||||
|     background: #fff; | ||||
|     padding: 16px 16px 0; | ||||
|  |  | |||
|  | @ -28,7 +28,7 @@ | |||
|               <el-row> | ||||
|                 <el-col :span="8"> | ||||
|                   <el-form-item label-width="45px" label="作者:" class="postInfo-container-item"> | ||||
|                     <el-select v-model="postForm.author" :remote-method="getRemoteUserList" filterable remote placeholder="搜索用户"> | ||||
|                     <el-select v-model="postForm.author" :remote-method="getRemoteUserList" filterable default-first-option remote placeholder="搜索用户"> | ||||
|                       <el-option v-for="(item,index) in userListOptions" :key="item+index" :label="item" :value="item" /> | ||||
|                     </el-select> | ||||
|                   </el-form-item> | ||||
|  |  | |||
|  | @ -26,17 +26,17 @@ | |||
|       </el-table-column> | ||||
| 
 | ||||
|       <el-table-column class-name="status-col" label="Status" width="110"> | ||||
|         <template slot-scope="scope"> | ||||
|           <el-tag :type="scope.row.status | statusFilter"> | ||||
|             {{ scope.row.status }} | ||||
|         <template slot-scope="{row}"> | ||||
|           <el-tag :type="row.status | statusFilter"> | ||||
|             {{ row.status }} | ||||
|           </el-tag> | ||||
|         </template> | ||||
|       </el-table-column> | ||||
| 
 | ||||
|       <el-table-column min-width="300px" label="Title"> | ||||
|         <template slot-scope="scope"> | ||||
|           <router-link :to="'/example/edit/'+scope.row.id" class="link-type"> | ||||
|             <span>{{ scope.row.title }}</span> | ||||
|         <template slot-scope="{row}"> | ||||
|           <router-link :to="'/example/edit/'+row.id" class="link-type"> | ||||
|             <span>{{ row.title }}</span> | ||||
|           </router-link> | ||||
|         </template> | ||||
|       </el-table-column> | ||||
|  |  | |||
|  | @ -1,6 +1,6 @@ | |||
| const steps = [ | ||||
|   { | ||||
|     element: '.hamburger-container', | ||||
|     element: '#hamburger-container', | ||||
|     popover: { | ||||
|       title: 'Hamburger', | ||||
|       description: 'Open && Close sidebar', | ||||
|  | @ -8,7 +8,7 @@ const steps = [ | |||
|     } | ||||
|   }, | ||||
|   { | ||||
|     element: '.breadcrumb-container', | ||||
|     element: '#breadcrumb-container', | ||||
|     popover: { | ||||
|       title: 'Breadcrumb', | ||||
|       description: 'Indicate the current page location', | ||||
|  | @ -16,31 +16,31 @@ const steps = [ | |||
|     } | ||||
|   }, | ||||
|   { | ||||
|     element: '.screenfull', | ||||
|     element: '#header-search', | ||||
|     popover: { | ||||
|       title: 'Page Search', | ||||
|       description: 'Page search, quick navigation', | ||||
|       position: 'left' | ||||
|     } | ||||
|   }, | ||||
|   { | ||||
|     element: '#screenfull', | ||||
|     popover: { | ||||
|       title: 'Screenfull', | ||||
|       description: 'Bring the page into fullscreen', | ||||
|       description: 'Set the page into fullscreen', | ||||
|       position: 'left' | ||||
|     } | ||||
|   }, | ||||
|   { | ||||
|     element: '.international-icon', | ||||
|     element: '#size-select', | ||||
|     popover: { | ||||
|       title: 'Switch language', | ||||
|       description: 'Switch the system language', | ||||
|       title: 'Switch Size', | ||||
|       description: 'Switch the system size', | ||||
|       position: 'left' | ||||
|     } | ||||
|   }, | ||||
|   { | ||||
|     element: '.theme-switch', | ||||
|     popover: { | ||||
|       title: 'Theme Switch', | ||||
|       description: 'Custom switch system theme', | ||||
|       position: 'left' | ||||
|     } | ||||
|   }, | ||||
|   { | ||||
|     element: '.tags-view-container', | ||||
|     element: '#tags-view-container', | ||||
|     popover: { | ||||
|       title: 'Tags view', | ||||
|       description: 'The history of the page you visited', | ||||
|  |  | |||
|  | @ -19,9 +19,9 @@ | |||
|     </el-table-column> | ||||
| 
 | ||||
|     <el-table-column min-width="300px" label="Title"> | ||||
|       <template slot-scope="scope"> | ||||
|         <span>{{ scope.row.title }}</span> | ||||
|         <el-tag>{{ scope.row.type }}</el-tag> | ||||
|       <template slot-scope="{row}"> | ||||
|         <span>{{ row.title }}</span> | ||||
|         <el-tag>{{ row.type }}</el-tag> | ||||
|       </template> | ||||
|     </el-table-column> | ||||
| 
 | ||||
|  | @ -44,9 +44,9 @@ | |||
|     </el-table-column> | ||||
| 
 | ||||
|     <el-table-column class-name="status-col" label="Status" width="110"> | ||||
|       <template slot-scope="scope"> | ||||
|         <el-tag :type="scope.row.status | statusFilter"> | ||||
|           {{ scope.row.status }} | ||||
|       <template slot-scope="{row}"> | ||||
|         <el-tag :type="row.status | statusFilter"> | ||||
|           {{ row.status }} | ||||
|         </el-tag> | ||||
|       </template> | ||||
|     </el-table-column> | ||||
|  |  | |||
|  | @ -46,9 +46,9 @@ | |||
|         </template> | ||||
|       </el-table-column> | ||||
|       <el-table-column :label="$t('table.title')" min-width="150px"> | ||||
|         <template slot-scope="scope"> | ||||
|           <span class="link-type" @click="handleUpdate(scope.row)">{{ scope.row.title }}</span> | ||||
|           <el-tag>{{ scope.row.type | typeFilter }}</el-tag> | ||||
|         <template slot-scope="{row}"> | ||||
|           <span class="link-type" @click="handleUpdate(row)">{{ row.title }}</span> | ||||
|           <el-tag>{{ row.type | typeFilter }}</el-tag> | ||||
|         </template> | ||||
|       </el-table-column> | ||||
|       <el-table-column :label="$t('table.author')" width="110px" align="center"> | ||||
|  | @ -67,30 +67,30 @@ | |||
|         </template> | ||||
|       </el-table-column> | ||||
|       <el-table-column :label="$t('table.readings')" align="center" width="95"> | ||||
|         <template slot-scope="scope"> | ||||
|           <span v-if="scope.row.pageviews" class="link-type" @click="handleFetchPv(scope.row.pageviews)">{{ scope.row.pageviews }}</span> | ||||
|         <template slot-scope="{row}"> | ||||
|           <span v-if="row.pageviews" class="link-type" @click="handleFetchPv(row.pageviews)">{{ row.pageviews }}</span> | ||||
|           <span v-else>0</span> | ||||
|         </template> | ||||
|       </el-table-column> | ||||
|       <el-table-column :label="$t('table.status')" class-name="status-col" width="100"> | ||||
|         <template slot-scope="scope"> | ||||
|           <el-tag :type="scope.row.status | statusFilter"> | ||||
|             {{ scope.row.status }} | ||||
|         <template slot-scope="{row}"> | ||||
|           <el-tag :type="row.status | statusFilter"> | ||||
|             {{ row.status }} | ||||
|           </el-tag> | ||||
|         </template> | ||||
|       </el-table-column> | ||||
|       <el-table-column :label="$t('table.actions')" align="center" width="230" class-name="small-padding fixed-width"> | ||||
|         <template slot-scope="scope"> | ||||
|           <el-button type="primary" size="mini" @click="handleUpdate(scope.row)"> | ||||
|         <template slot-scope="{row}"> | ||||
|           <el-button type="primary" size="mini" @click="handleUpdate(row)"> | ||||
|             {{ $t('table.edit') }} | ||||
|           </el-button> | ||||
|           <el-button v-if="scope.row.status!='published'" size="mini" type="success" @click="handleModifyStatus(scope.row,'published')"> | ||||
|           <el-button v-if="row.status!='published'" size="mini" type="success" @click="handleModifyStatus(row,'published')"> | ||||
|             {{ $t('table.publish') }} | ||||
|           </el-button> | ||||
|           <el-button v-if="scope.row.status!='draft'" size="mini" @click="handleModifyStatus(scope.row,'draft')"> | ||||
|           <el-button v-if="row.status!='draft'" size="mini" @click="handleModifyStatus(row,'draft')"> | ||||
|             {{ $t('table.draft') }} | ||||
|           </el-button> | ||||
|           <el-button v-if="scope.row.status!='deleted'" size="mini" type="danger" @click="handleModifyStatus(scope.row,'deleted')"> | ||||
|           <el-button v-if="row.status!='deleted'" size="mini" type="danger" @click="handleModifyStatus(row,'deleted')"> | ||||
|             {{ $t('table.delete') }} | ||||
|           </el-button> | ||||
|         </template> | ||||
|  |  | |||
|  | @ -39,9 +39,9 @@ | |||
|       </el-table-column> | ||||
| 
 | ||||
|       <el-table-column class-name="status-col" label="Status" width="110"> | ||||
|         <template slot-scope="scope"> | ||||
|           <el-tag :type="scope.row.status | statusFilter"> | ||||
|             {{ scope.row.status }} | ||||
|         <template slot-scope="{row}"> | ||||
|           <el-tag :type="row.status | statusFilter"> | ||||
|             {{ row.status }} | ||||
|           </el-tag> | ||||
|         </template> | ||||
|       </el-table-column> | ||||
|  |  | |||
|  | @ -26,31 +26,31 @@ | |||
|       </el-table-column> | ||||
| 
 | ||||
|       <el-table-column class-name="status-col" label="Status" width="110"> | ||||
|         <template slot-scope="scope"> | ||||
|           <el-tag :type="scope.row.status | statusFilter"> | ||||
|             {{ scope.row.status }} | ||||
|         <template slot-scope="{row}"> | ||||
|           <el-tag :type="row.status | statusFilter"> | ||||
|             {{ row.status }} | ||||
|           </el-tag> | ||||
|         </template> | ||||
|       </el-table-column> | ||||
| 
 | ||||
|       <el-table-column min-width="300px" label="Title"> | ||||
|         <template slot-scope="scope"> | ||||
|           <template v-if="scope.row.edit"> | ||||
|             <el-input v-model="scope.row.title" class="edit-input" size="small" /> | ||||
|             <el-button class="cancel-btn" size="small" icon="el-icon-refresh" type="warning" @click="cancelEdit(scope.row)"> | ||||
|         <template slot-scope="{row}"> | ||||
|           <template v-if="row.edit"> | ||||
|             <el-input v-model="row.title" class="edit-input" size="small" /> | ||||
|             <el-button class="cancel-btn" size="small" icon="el-icon-refresh" type="warning" @click="cancelEdit(row)"> | ||||
|               cancel | ||||
|             </el-button> | ||||
|           </template> | ||||
|           <span v-else>{{ scope.row.title }}</span> | ||||
|           <span v-else>{{ row.title }}</span> | ||||
|         </template> | ||||
|       </el-table-column> | ||||
| 
 | ||||
|       <el-table-column align="center" label="Actions" width="120"> | ||||
|         <template slot-scope="scope"> | ||||
|           <el-button v-if="scope.row.edit" type="success" size="small" icon="el-icon-circle-check-outline" @click="confirmEdit(scope.row)"> | ||||
|         <template slot-scope="{row}"> | ||||
|           <el-button v-if="row.edit" type="success" size="small" icon="el-icon-circle-check-outline" @click="confirmEdit(row)"> | ||||
|             Ok | ||||
|           </el-button> | ||||
|           <el-button v-else type="primary" size="small" icon="el-icon-edit" @click="scope.row.edit=!scope.row.edit"> | ||||
|           <el-button v-else type="primary" size="small" icon="el-icon-edit" @click="row.edit=!row.edit"> | ||||
|             Edit | ||||
|           </el-button> | ||||
|         </template> | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Pan
						Pan