2017-08-25 99 views
1

我遇到了问题,我没有看到有人遇到过这种问题。 基本上我做了一个帮手来格式化一个日期,它有一个像让利,或expoorts的EcmaScript的一些语法。 其在除了IE的所有浏览器中工作,所以我虽然确定它的时间来配置填充工具,所以我阅读文档,与Ember-CLI-巴贝尔配置它,我无法看到的结果如预期。Ember Cli - 预计添加了Polyfill Internet Explorer错误对象

我有灰烬的应用程序,与Ember CLI

DEBUG: ------------------------------- 
DEBUG: Ember : 2.14.1 
DEBUG: jQuery : 2.2.4 
DEBUG: ------------------------------- 

我包括填充工具在这样 烬-CLI

var EmberApp = require('ember-cli/lib/broccoli/ember-app'); 

module.exports = function(defaults) { 
    var app = new EmberApp(defaults, { 
    'ember-cli-babel': { 
     includePolyfill: true 
    }, 
    storeConfigInMeta: false, 
    minifyJS: { 
     enabled: false 
    }, 
    minifyCSS: { 
     enabled: false 
    }, 
    vendorFiles: { 
     'jquery.js': { 
     development: 'bower_components/jquery/dist/jquery.js', 
     production: false, 
     development: false 
     } 
    } 
    }); 

    app.import('vendor/jquery.lumanetix.all.min.js'); 

    return app.toTree(); 
}; 

我有一个烬帮手这里格式化日期我花椰菜文件它是:

import Ember from 'ember'; 

export function dateAuctionFormat(date/*, hash*/) { 
    let dateObj = new Date(date); 
    let monthName = getMonthName(dateObj.getUTCMonth()); 
    let dayNumber = dateObj.getUTCDate(); 
    dayNumber = dayNumber + formatDateNotation(dayNumber); 
    let dayName = getWeekDayName(dateObj.getDay()); 
    let time = dateObj.toLocaleString('en-US', { hour: 'numeric', minute:'numeric', hour12: true }); 
    return dayName + ' ' + dayNumber + ' ' + monthName + ' ' + time; 
} 

function getMonthName(date) { 
    let month = []; 
    month[0] = "Jan"; 
    month[1] = "Feb"; 
    month[2] = "March"; 
    month[3] = "April"; 
    month[4] = "May"; 
    month[5] = "June"; 
    month[6] = "July"; 
    month[7] = "Aug"; 
    month[8] = "Sept"; 
    month[9] = "Oct"; 
    month[10] = "Nov"; 
    month[11] = "Dec"; 
    return month[date]; 
} 

function getWeekDayName(date) { 
    let weekday = new Array(7); 
    weekday[0] = "Sunday"; 
    weekday[1] = "Monday"; 
    weekday[2] = "Tuesday"; 
    weekday[3] = "Wednesday"; 
    weekday[4] = "Thursday"; 
    weekday[5] = "Friday"; 
    weekday[6] = "Saturday"; 
    return weekday[date]; 
} 

function formatDateNotation(d) { 
    if (d > 3 && d < 21) { 
    return 'th'; 
    } 

    switch (d % 10) { 
     case 1: return "st"; 
     case 2: return "nd"; 
     case 3: return "rd"; 
     default: return "th"; 
    } 
} 

export default Ember.Helper.helper(dateAuctionFormat); 

但是,当Internet Explorer 11正在渲染该网站时,我在调试器中有这样的错误: Error Image

错误说对象预期。 ,你可以看到只显示行后的误差

export default App.extend({ 
    // rootElement: '#listings-search' 
}); 

所以我不从那里开始,我尝试修改一点点,app.js知道,但没有运气,我也试图转换我的ES6代码ES5与此转换器: https://babeljs.io/repl/

但当然它没有工作,也不是它的想法。

回答

0

我相信你需要添加目标你的目标配置。您可以使用此列表:

https://github.com/ai/browserslist#queries

此目标文件后来被巴贝尔,以确定哪些功能是通过浏览器的支持,这会影响以后的JavaScript transpiled。